Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arn4v/offline-first
A list of projects in the offline-first storage, sync & realtime collaboration/multiplayer space. [PRs welcome]
https://github.com/arn4v/offline-first
crdt crdt-implementations crdts offline-first prs-welcome realtime-collaboration sqlite
Last synced: 3 months ago
JSON representation
A list of projects in the offline-first storage, sync & realtime collaboration/multiplayer space. [PRs welcome]
- Host: GitHub
- URL: https://github.com/arn4v/offline-first
- Owner: arn4v
- Created: 2022-11-13T18:00:04.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-17T23:56:02.000Z (11 months ago)
- Last Synced: 2024-08-05T15:07:14.363Z (6 months ago)
- Topics: crdt, crdt-implementations, crdts, offline-first, prs-welcome, realtime-collaboration, sqlite
- Homepage:
- Size: 32.2 KB
- Stars: 57
- Watchers: 5
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Offline-First
A list of projects in the offline-first storage, sync & realtime collaboration/multiplayer space.
## Databases
1. [RxDB](https://github.com/pubkey/rxdb)
2. [WatermelonDB](https://github.com/Nozbe/WatermelonDB)
3. [Tuple](https://github.com/ccorcos/tuple-database)
4. [Datascript](https://github.com/tonsky/datascript)
5. [Gun](https://github.com/amark/gun)
6. [TinyBase](https://tinybase.org/)
7. [SignalDB](https://signaldb.js.org/)
8. [Fireproof](https://use-fireproof.com/)
9. [Vlcn](https://github.com/vlcn-io/vlcn-orm) – ORM & P2P Syncing library to build offline-first apps.
10. [Kikko](https://github.com/kikko-land/kikko) – Reactive query layer on top of SQLite with support for web, desktop (Electron/Tauri) and mobile (React Native/Capacitor)## Frameworks
1. [Evolu](https://github.com/evoluhq/evolu)
2. [Verdant](https://github.com/a-type/verdant)
3. [Liveblocks](https://liveblocks.io)
4. [Replicache](https://replicache.dev/)
5. [SyncedStore](https://github.com/yousefed/SyncedStore)## CRDT Implementations
### JavaScript
1. [Tinymerge](https://github.com/siliconjungle/tiny-merge)
2. [Yjs](https://github.com/yjs/yjs)
3. [Automerge](https://github.com/automerge/automerge)### Rust
1. [CR SQlite](https://github.com/vlcn-io/cr-sqlite) - LWW register for SQLite
2. [Diamond Types (Rust)](https://github.com/josephg/diamond-types)
3. [y-crdt - Rust port of Y.js](https://github.com/y-crdt/y-crdt)
4. [automerge-rs](https://github.com/automerge/automerge-rs)## Startups
1. [InstantDB](https://instantdb.com) – Firebase alternative with a Graph-based client DB at the core
3. [ElectricSQL](https://electric-sql.com/)
4. [Homebase](https://homebase.io/)
5. [Convex](https://www.convex.dev/)## Miscellaneous
1. [Redux Offline](https://github.com/redux-offline/redux-offline) – Persistence layer for Redux stores.
2. [localForage](https://github.com/localForage/localForage)## Resources
### Writeups
1. [Local-first software – You own your data, in spite of the cloud](https://www.inkandswitch.com/local-first/) - [Ink and Switch](https://www.inkandswitch.com)
2. [Building a BFT JSON CRDT](https://jzhao.xyz/posts/bft-json-crdt/)
3. [Riffle - Building data-centric apps with a reactive relational database](https://riffle.systems/essays/prelude/)
4. [Realtime editing of ordered sequences](https://www.figma.com/blog/realtime-editing-of-ordered-sequences/)
5. [How Figma’s multiplayer technology works](https://www.figma.com/blog/how-figmas-multiplayer-technology-works/)
6. [An introduction to state-based CRDTs](### Videos
1. [CRDTs for Mortals](https://www.youtube.com/watch?v=DEcwa68f-jY) - James Long
2. [Conflict-Free Replicated Data Types (CRDT) for Distributed JavaScript Apps.](https://www.youtube.com/watch?v=M8-WFTjZoA0)
3. [A CRDT Primer: Defanging Order Theory](https://www.youtube.com/watch?v=OOlnp2bZVRs) - John Mumm
4. [Building a collaborative text editor with WebRTC and CRDTs](https://www.youtube.com/watch?v=hy0ePbpna5Y)
6. [Riffle - Reactive Relational State (Local-First Meetup Berlin #1)](https://www.youtube.com/watch?v=zjl7CpG9h3w) - Geoffrey Litt
7. [CRDTs for Non Academics](https://www.youtube.com/watch?v=vBU70EjwGfw)
8. [Automerge: Making servers optional for real-time collaboration](https://www.youtube.com/watch?v=PHz17gwiOc8) - Martin Kleppmann
9. [Linear's realtime sync system](https://www.youtube.com/watch?v=WxK11RsLqp4&t=2169s) - Tuomas Artman
10. [Scaling the Linear Sync Engine](https://linear.app/blog/scaling-the-linear-sync-engine)
11. [Metamuse Episode 56 - Sync]([url](https://museapp.com/podcast/56-sync/)https://museapp.com/podcast/56-sync/)### Podcasts
1. [Localfirst.fm](https://localfirst.fm/)