4 ms·
Sorry, unfortunately I am a bit lost on what this does (on my phone, so couldn't see the demos on the website). I'm an android developer, but I am not sure what
by carstenhag 3y ago
Sorry, unfortunately I am a bit lost on what this does (on my phone, so couldn't see the demos on the website). I'm an android developer, but I am not sure what this would do.
Do you have an example of an app/backend at which you can explain where Powersync helps?
- ochiba 3y agoThe goal is basically to help you build offline-first apps. In the offline-first paradigm, app code works directly with a client-side embedded database, which automatically syncs with a backend database in the background. This is in contrast to cloud-first apps which primarily use a cloud datastore via APIs. Working with a local database (e.g. SQLite) means that apps feel instant to use because of low latency, and remain functional when the user’s network connection is unreliable or offline. Also, offline-first typically offers built-in real-time collaboration by automatically syncing data in the background. There's 1-minute demo video here of a Flutter "To-Do List" app showing some of these concepts: https://www.youtube.com/watch?v=VTx5ViRe3HY https://www.youtube.com/watch?v=VTx5ViRe3HY (this demo uses a Supabase Postgres backend for simplicity)
- JCharante 3y agoOh that's very interesting. I guess it's easier to deal with "only" sqlite than to have a store, keep track of mutations, and then upload/download the mutations when the device is reconnected.
- ochiba 3y agoFor sure, working only with a local SQLite database does simplify state management in many cases. For the most part you don't need an additional state management system/library. Meta had an interesting article a few years back about how they rewrote the Messenger app to use SQLite: https://engineering.fb.com/2020/03/02/data-infrastructure/messenger/ https://engineering.fb.com/2020/03/02/data-infrastructure/me...