Nostr clients are perfect examples of software that should prioritize a local-first approach. However, many Nostr developers still write software as if there's a reliable backend. But in a decentralized network, there isn't one. It's essential to maintain a local state and only synchronize this local state with the relays when necessary.

https://www.inkandswitch.com/local-first/static/local-first.pdf

Reply to this note

Please Login to reply.

Discussion

That's why all these apps suck so bad... Plus bad UX and no view on usability. Just my 2 cts

The cache for events was one of the first features we implemented in Plebstr, but we aren't entirely local-first. However, we acknowledge the areas you've mentioned need substantial improvements.

We're learning as we build, and there's nothing wrong with that, in my opinion.

Thanks for sharing 💜

You can port Evolu to Dart. The core is pretty stable.

Will take a look 😊

True

https://github.com/evoluhq/evolu

🔜 React Native

nostr:note157dghjmjzydlrdjlqeaprhgxaelqf0s4wrjran982cz6zk6jflls0px4r8

https://github.com/evoluhq/evolu