Thanks, it's of course a work in progress, but nice to see people saying good things about my work. Coracle does follow the gossip model, but the result is that many times it uses relays based on context rather than your selections. So when creating a new note, it should be publishing to your write relays (let me know if not), but most of the time it will be looking at relays your follows use (for loading feeds), or relays a given note hinted or was found on (for publishing replies). The goal is deliverability, but it's not an exact science. One thing I could definitely do better is keep closer track of relay health and ignore bad connections. I'm sure there are still bugs, so let me know if that explanation doesn't account for what you're seeing.

Replies (16)

I'm happy to share that njump, after a lot of tweaks and fixes, exits the beta and is ready for production, hopefully :) # What is njump? Njump (https://github.com/fiatjaf/njump) is a static nostr gateway that allows you to browse profiles, notes and relays; it is an easy way to preview a resource and then open it with the preferred client. Njump currently lives under nostr.com, you can reach it appending a nostr (NIP-19) entity (npub, nevent, naddr, etc) after the domain, nostr.com/p/{nip-19-entity}, for example: The typical use of njump is to share a resource outside the nostr world (clients), where the nostr: schema is not (yet) active. There are several reasons to prefer njump to share a nostr resource, versus other web clients, let's see them. ## Clean, fast and solid Pages by njump are extremely light and fast to load because there isn't any client side javascript involved; they are minimalistic with the right attention to typography, focusing the content without unecessary details. Furthermore they are cached, so sharing a page you can expect the other part will load it without any glitch in a fraction of second: the perfect tool to onboard new users! ## Good preview Njump previews notes in a simple but effective way, including links (to other nostr resources and web), images, video, quotes, code. It is compatible with long form content so it also renders markdown. It shows the note parent, allowing to follow it up. It has custom css for printing or exporting to PDF, so it is a nice option to read long form contents offline. ## Cooperative (jump-out) Njump is not interested into "capture" users at all, on the contrary it invites them to "jump" to the nostr resource with one of the proposed clients. It even remembers the most used one and put it on the top for fast click/tap. ## Search engine friendly (jump-in) This is crucial: njump pages are static so search engines can index them, these means that njump can help others to discover great content on nostr, jump in and join us! Njump is the only nostr resource that has this explicit goal, if you care that a good note could be found online use njump to share it, this way you also help nostr flourish. ## Bonus: NIP-5 profiles Now you can share your own profile with an pretty permalink: nostr.com/p/{nip-5}, example: https://nostr.com/p/fiatjaf.com A profile shows the basic metadata infos, the used "outbox" relays (Gossip model) and the last notes. Of course profiles are also static, fast and indexable, so start to promote your nostr presence this way! ## Bonus 2: relays You can have a view of the last content posted to a relay using nostr.com/r/{relay-host}, example: Some basic infos (NIP-11) are available; I hope operators will start to make them more personal and informative so users can have a way to evaluate if/when to join a relay. ## Bonus 3: Inspector tool You know, we are all devs including our moms, so for every njump resource you can toggle the "Show more details" switch and inspect the full event's json; without installing other tools, like nak, this is probably the fastest way to obtain it.
:)) You shared a x.com link, did you remember where did you found it? Did you post the link using the app or the web? I suspect that twitter is using a new bot name related to x.com, and this ruins our nice preview.
τέχνη's avatar
τέχνη 2 years ago
Your third example is a long-form post? Honestly I think it’s better than the apps dedicated to long-form posts 😅 What is “naddr” btw? Why not use a “nevent” url for the long-form post as well? Would it render differently if you used the nevent link instead? Also how does the app redirect or app suggestion work? Do you plan to somehow recommend that people read the posts on other apps?
τέχνη's avatar
τέχνη 2 years ago
I see the pop up on the bottom of the screen now! Nevermind on the third question
Oh thanks, glad you like the long format view :) It also has a quite good print/pdf rendering. naddr is a nostr parameterized replaceable event coordinate, for long format you should use it because the single version (nevent) could be updated. Currently the app selection is static, probability NIP-89 will be implemented. No plans to export statistic about the usage, we don't keep any data about that.
τέχνη's avatar
τέχνη 2 years ago
Sorry for this being off topic, but what do you mean by nevent being updated? Like they could edit the article? Or the relay could delete and re-use the same event ID? Or is naddr sort like a hash that is permanent?
> Like they could edit the article? Yes. An edit produces a new event. > Or the relay could delete and re-use the same event ID? No, an event ID is generated by the sign fuction, with the user priv key, applied to the whole payload, so only the user can create an event/id. If the content changes, the ID cannot be the same, > Or is naddr sort like a hash that is permanent? A sort of, it includes the "coordinates", check: NIP-01 "for kind n such that 30000 <= n < 40000, events are parameterized replaceable, which means that, for each combination of pubkey, kind and the d tag, only the latest event is expected to be stored by relays, older versions are expected to be discarded." NIP-23: "These articles are meant to be editable, so they should make use of the parameterized replaceability feature and include a d tag with an identifier for the article." ... "The article may be linked to using the NIP-19 naddr code along with the a tag." So "pubkey, kind and the d tag" are the coordinates used to get the last version of a replaciable event. To inspect a nostr object use