Hi HN,<p>Today we’re launching PowerSync, a Postgres<>SQLite bi-directional sync engine that enables an offline-first app architecture. It currently supports Flutter, React Native and web (JavaScript) using Wasm SQLite in the browser, with more client SDKs on the way.<p>Conrad and I (Ralf) have been working on our sync engine since 2009, originally as part of a full-stack app platform. That version of the system is still used in production worldwide and we’ve learnt a lot from its use cases and scaling. About a year ago we started on spinning off PowerSync as a standalone product that is designed to be stack-agnostic.<p>If you’d like to see a simple demo, check out the pebbles widget on the landing page here: <a href="https://www.powersync.com/" rel="nofollow noreferrer">https://www.powersync.com/</a><p>We wrote about our architecture and design philosophy here: <a href="https://www.powersync.com/blog/introducing-powersync-v1-0-postgres-sqlite-sync-layer" rel="nofollow noreferrer">https://www.powersync.com/blog/introducing-powersync-v1-0-po...</a><p>This covers amongst other things how we designed the system for scalable dynamic partial replication, why we use a server authority architecture based on an event log instead of CRDTs for merging changes, and the approach to consistency.<p>Our docs can be found here: <a href="https://docs.powersync.com/" rel="nofollow noreferrer">https://docs.powersync.com/</a><p>We would love to hear your feedback!
- Ralf, Conrad, Kobie, Phillip and team