Local-first software emphasizes user agency and privacy as a core principle, while still supporting features we expect from modern apps, like great performance and real-time collaboration. In local-first apps, the “cloud” is entirely optional, which means that your data only belongs to you, and no-one can restrict your access to that data.

We are researching how to make local-first apps better, and what it actually takes to go from traditional cloud-based applications to local-first ones. This topic is about taking some existing cloud-based open source apps, and modifying them to better align with local-first principles. This should be done step-by-step, starting with a thorough analysis of an existing cloud-based app (including its architecture, stack, and major design decisions), then looking into the “Local-first” approach and identifying necessary changes, and finally using any existing stacks, frameworks, or libraries to convert the application into a version that is significantly more Local-first than before.

Along with the actual implementation, you will document your approaches, challenges, and successes along the way.

Getting started: