When considering building a local-first app it's important to know which parts of the stack "just work", and which are still experimental.

In this post on the @PrototypeFund blog we give an overview of the various moving parts, using Reflection as an example: https://www.prototypefund.de/en/blog/the-road-to-a-local-first-app-ecosystem

tl;dr:

Mostly just works
โœ… CRDTs (Loro, Automerge, Yrs)
โœ… P2P networking (iroh)
โœ… Ephemeral messaging (e.g. for cursor position)
โœ… Local-first sync for eventual consistency
โœ… Confidential topic discovery
โœ… Token-based access (non-revocable)

WIP
๐Ÿ—๏ธ End-to-end encryption for groups
๐Ÿ—๏ธ Fine-grained, revocable access controls
๐Ÿ—๏ธ Multi-device management
๐Ÿ—๏ธ IP address privacy (Tor)

Experimental
๐Ÿงช Support nodes
๐Ÿงช Identity & contacts
๐Ÿงช Data migrations
๐Ÿงช Mesh networking (Bluetooth, LoRa)

For many types of apps, to actually replace a server you realistically need all of the above. Other apps can be built with only the things that work right now though, and there are shortcuts you can take to approximate things.

For example, this new concept for Reflection solves a lot of the pain points we found in user testing without requiring any additional local-first tech: https://github.com/p2panda/reflection/discussions/234

Reflection Next ยท p2panda reflection ยท Discussion #234

While writing the blog post on the state of the ecosystem, I was thinking about what the current limitations of the stack mean for Reflection short-term, and what our next priorities could/should b...

GitHub
@modal Does the protocol do any traffic analysis defense?
@modal I have an idea that's definitely gonna work out with current limitations but oof I already have work and like a dozen of other "hobby" projects too aaaa

@modal interesting stuff. Call me a doomer, but we really need to prepare for a time where Internet is not available at all times.

The prospects of (cyber) warfare (not just from the east) or e.g. climate related catastrophe are not as abstract as they once were, and Iโ€™m increasingly getting the feeling that we should prepare to adapt to new realities.

Not saying a collapse is a given. But these initiatives feel important for our resilience as society. Very cool work.