electric
electric_dart
Our great sponsors
electric | electric_dart | |
---|---|---|
27 | 2 | |
4,831 | 81 | |
13.0% | - | |
9.8 | 9.7 | |
about 10 hours ago | 5 days ago | |
Elixir | Dart | |
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
-
Ask HN: How Can I Make My Front End React to Database Changes in Real-Time?
I'm interested in this problem also!
I think there is a large overlap with projects that market/focus on offline-first experiences.
AFAIK this problem can be solved by:
1) Considering a client-side copy of the database that gets synced with the remote DB. This is an approach [PowerSync](https://www.powersync.com/) and [ElectricSql](https://electric-sql.com/) and [rxdb](https://rxdb.info/) take!
-
Cloudflare acquires PartyKit to allow developers to build real-time multi-user
Yeah I agree with it being an exaggeration. They are certainly riding the admittedly dated perception that realtime is so hard it's only available to the Googles and Figmas. But there's now some amazing open source solutions available like Y.js and ElectricSQL[1]. The barrier has certainly come down.
[1] https://github.com/electric-sql/electric
- Ask HN: Who is hiring? (April 2024)
- FLaNK Stack 26 February 2024
- FLaNK Stack Weekly 12 February 2024
- Show HN: RemoteStorage – sync localStorage across devices and browsers
- I pwned half of America's fast food chains, simultaneously
-
PostgreSQL 16 Bi-Directional Logical Replication
https://github.com/electric-sql/electric :
> ElectricSQL is a local-first software platform that makes it easy to develop high-quality, modern apps with instant reactivity, realtime multi-user collaboration and conflict-free offline support.
> Local-first is a new development paradigm where your app code talks directly to an embedded local database and data syncs in the background via active-active database replication. Because the app code talks directly to a local database, apps feel instant. Because data syncs in the background via active-active replication it naturally supports multi-user collaboration and conflict-free offline
"SQLedge: Replicate Postgres to SQLite on the Edge" (2023)
-
Show HN: PowerSync – Bi-directional Postgres<>SQLite sync for offline-first apps
Yup, this is correct.
We have had some requests / discussions around adding hooks to the sync service that will support custom logic on the write path (as per https://github.com/electric-sql/electric/discussions/565). This seems like a good idea but they don't exist yet.
- Electric SQL – Local-first sync layer for web and mobile apps
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.
What are some alternatives?
fulcro - A library for development of single-page full-stack web applications in clj/cljs
fugue-bench - Fugue list CRDT implementations and benchmarks
cr-sqlite - Convergent, Replicated SQLite. Multi-writer and CRDT support for SQLite
vaxine - Rich-CRDT database based on AntidoteDB.
crdt-benchmarks - A collection of CRDT benchmarks
eventually-consistent-mesh - an attempt to create an asynchronously replicated append only eventually consistent data protocol
wundergraph - WunderGraph is a Backend for Frontend Framework to optimize frontend, fullstack and backend developer workflows through API Composition.
crdt-benchmarks - Real world text editing traces for benchmarking CRDT and Rope data structures [Moved to: https://github.com/josephg/editing-traces]
multiversion-concurrency-control - Implementation of multiversion concurrency control, Raft, Left Right concurrency Hashmaps and a multi consumer multi producer Ringbuffer, concurrent and parallel load-balanced loops, parallel actors implementation in Main.java, Actor2.java and a parallel interpreter
pg_crdt - POC CRDT support in Postgres
mycelite - Mycelite is a SQLite extension that allows you to synchronize changes from one instance of SQLite to another.
text-diff - a python implementation of diff3 and three way merge