Alternatives
The following table lists alternative tools and projects that you can use to make local-first apps. If we’ve missed one or the information is incorrect please let us know.
Name | URL | Maturity | Consistency | Offine | P2P | SQL | Constraints | Active-active | Conflict-free | Realtime-reactive | Open-source | Turnkey service |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Realm (Mongo) | realm.io | high | eventual | true | false | false | local | true | true | true | true | true |
Firebase (Google) | firebase.google.com | high | causal | true | false | false | false | true | true | true | false | true |
Pouch (Apache CouchDB) | pouchdb.com | high | eventual | true | true | false | false | true | false | true | true | false |
Litestream (Fly.io) | litestream.io | low | read replicas | true | false | true | local | false | false | false | true | false |
LiteFS (Fly.io) | superfly/litefs | low | read replicas | true | false | true | local | false | false | false | true | true |
Ampli-sync | ampliapps.com | medium | eventual | true | false | true | local | true | false | false | true | false |
Aphrodite | aphrodite.sh | low | causal | true | true | true | false | true | true | true | true | false |
Evolu | evoluhq/evolu | low | unknown | true | true | partial | false | true | true | true | true | planned |
InstantDB (Datascript) | instantdb.com | low | unknown | true | false | false | false | true | unknown | true | false | false |
Homebase (Datahike) | homebase.io | low | unknown | true | false | false | false | true | true | true | true | false |
Supabase | supabase.com | high | n/a | false | false | false | server side | false | false | true | true | true |
Apollo (GraphQL) | apollographql.com | high | n/a | true | false | false | server side | false | false | true | true | false |
Relay (GraphQL) | relay.dev | high | n/a | true | false | false | server side | false | false | true | true | false |
Ditto | ditto.live | medium | causal | true | false | false | false | true | true | true | false | true |
Concordant | concordant.io | low | causal | true | true | false | false | true | true | true | true | false |
Mycelial | mycelial.com | low | causal | true | true | true | false | true | true | true | true | n/a |
Pocketbase | pocketbase.io | medium | n/a | true | false | false | false | false | n/a | true | true | n/a |
TinyBase | tinybase.org | low | n/a | true | false | false | false | false | n/a | true | true | false |
Harper | harperdb.io | medium | eventual | true | false | partial | server side | false | false | false | false | true |
Watermelon | nozbe/WatermelonDB | medium | n/a | true | false | true | relations | n/a | n/a | true | true | false |
Gun | gun.eco | medium | causal | true | true | false | false | true | true | true | true | false |
Convex | convex.dev | medium | unknown | true | false | false | false | true | true | true | false | false |
Redwood (Braid) | redwood.dev | low | unknown | true | true | false | false | true | true | true | true | false |
remoteStorage.js | remotestorage.io | high | eventual | true | false | false | false | true | false | false | true | true |
RxDB | rxdb.info | high | timeline | true | false | false | false | true | false | true | true | false |
Hypermerge | automerge/hypermerge | medium | causal | true | true | false | false | true | true | true | true | false |
Yjs | yjs.dev | high | state vectors | true | true | false | false | true | true | true | true | false |
SOLID | solidproject.org | high | n/a | true | true | false | false | false | false | false | true | true |
Kinto | kinto-storage.org | high | n/a | true | false | false | false | false | true | true | true | false |
ShareDB | share/sharedb | medium | eventual | true | false | false | false | true | true | true | true | false |
OrbitDB | orbitdb.org | high | eventual | true | true | false | false | true | true | true | true | false |
Non-comparisons
Note that we have not included:
- consensus-based geo-distributed databases like Spanner, Cockroach and Fauna
- consensus-based SQLite replication systems like Dqlite and rqlite
- other consensus based systems like Redis
- edge databases-as-a-service like Macrometa and D1
- read replica systems like Fly Postgres and Polyscale
- OLAP / data analytics systems like DuckDB / Motherduck
- horizontal sharding systems like Planetscale and Citus
- distributed filesystems like IPFS and RainbowFS