electric_dart
vaxine
electric_dart | vaxine | |
---|---|---|
2 | 2 | |
84 | 109 | |
- | 0.0% | |
9.7 | 10.0 | |
4 days ago | over 1 year ago | |
Dart | Erlang | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
electric_dart
-
Show HN: ElectricSQL, Postgres to SQLite active-active sync for local-first apps
Hey, yup it's definitely a medium term objective.
The team at SkillDevs are maintaining a Daft/Flutter client at https://github.com/SkillDevs/electric_dart
Plus we have a thread to extract the core client-side replication component to Rust to be able to compile for multiple targets.
-
CRDT-richtext: Rust implementation of Peritext and Fugue
We (ElectricSQL) have some work underway on a Rust/WASM port of our core client component, that’s designed to open up more language support.
This is a community contributed Dart/Flutter client https://github.com/SkillDevs/electric_dart that may also be a useful reference.
vaxine
-
Show HN: ElectricSQL, Postgres to SQLite active-active sync for local-first apps
Hi HN, James, Valter, Sam and the team from ElectricSQL here.
We're really excited to be sharing ElectricSQL with you today. It's an open source, local-first sync layer that can be used to build reactive, realtime, offline-capable apps directly on Postgres with two way active-active sync to SQLite (including with WASM in the browser).
Electric comprises a sync layer (built with Elixir) placed in front of your Postgres database and a type safe client that allows you to bidirectionally sync data from your Postgres to local SQLite databases. This sync is CRDT-based, resilient to conflicting edits from multiple nodes at the same time, and works after being offline for extended periods.
Some good links to get started:
- website: https://electric-sql.com
- docs: https://electric-sql.com/docs
- code: https://github.com/electric-sql/electric
- introducing post: https://electric-sql.com/blog/2023/09/20/introducing-electri...
You can also see some demo applications:
- Linear clone: https://linear-lite.electric-sql.com
- Realtime demo: https://electric-sql.com/docs/intro/multi-user
- Conflict-free offline: https://electric-sql.com/docs/intro/offline
The Electric team actually includes two of the inventors of CRDTs, Marc Shapiro and Nuno Preguiça, and a number of their collaborators who've pioneered a lot of tech underpinning local-first software. We are privileged to be building on their research and delighted to be surfacing so much work in a product you can now try out.
- SQLite WASM Official
What are some alternatives?
fugue-bench - Fugue list CRDT implementations and benchmarks
electric - Local-first sync layer for web and mobile apps. Build reactive, realtime, local-first apps directly on Postgres.
evolu - Local-first platform designed for privacy, ease of use, and no vendor lock-in
eventually-consistent-mesh - an attempt to create an asynchronously replicated append only eventually consistent data protocol
cr-sqlite - Convergent, Replicated SQLite. Multi-writer and CRDT support for SQLite
crdt-benchmarks - Real world text editing traces for benchmarking CRDT and Rope data structures [Moved to: https://github.com/josephg/editing-traces]
wasm_sqlite_with_stats - Documentation and demonstration of how to build WASM versions of SQLite with extensions embedded
pg_crdt - POC CRDT support in Postgres
kikko - Powerful SQLite adapter for web, mobile and desktop. Build reactive UI on top of it
text-diff - a python implementation of diff3 and three way merge
examples - Example applications using ElectricSQL.