materialite
electric
materialite | electric | |
---|---|---|
2 | 27 | |
65 | 4,879 | |
- | 8.4% | |
9.1 | 9.8 | |
29 days ago | 3 days ago | |
TypeScript | Elixir | |
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.
materialite
-
Ask HN: How Can I Make My Front End React to Database Changes in Real-Time?
Hey, Electric co-founder here.
Yup, our reactivity is quite simple at the moment, as described, and works quite well because SQLite is so fast. There are other projects doing more sophisticated reactivity algorithms, like Riffle/LiveStore, which has a reactive DAG optimised to avoid re-rendering and https://github.com/vlcn-io/materialite, which is like differential dataflow for live queries.
They're quite bleeding edge at the moment, but you can expect more efficient primitives for incremental view maintenance / efficient subscriptions to land in the embedded database layer quite soon.
Just also re: above, shape filtering for partial sync landed in v0.10 https://electric-sql.com/blog/2024/04/10/electricsql-v0.10-r... :)
-
Let's learn how modern JavaScript frameworks work by building one
I've stopped paying close attention to the web framework scene in the past couple of years, as most of the interesting ideas on this topics are usually coming from different communities. But as I understand, the majority of popular web frameworks (React, Vue3, Angular) are still using tree diffing or hybrid "signals"+tree diffing strategies.
In my opinion, one of the most interesting ideas to explore in this problem space is a hybrid solution: differential dataflow[1][2](model) + self-adjusting computations(view-model + view).
1. https://github.com/vlcn-io/materialite
2. https://timelydataflow.github.io/differential-dataflow/
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
What are some alternatives?
denorm - Denormalized and aggregated tables for PostgreSQL.
fulcro - A library for development of single-page full-stack web applications in clj/cljs
butterfloat - The greatest view engine for the modern web
cr-sqlite - Convergent, Replicated SQLite. Multi-writer and CRDT support for SQLite
capable-js - An effect system for building multi-stage UIs, powered by async generators.
crdt-benchmarks - A collection of CRDT benchmarks
pota - pota is a small and pluggable Reactive Web Renderer. https://pota.quack.uy/
wundergraph - WunderGraph is a Backend for Frontend Framework to optimize frontend, fullstack and backend developer workflows through API Composition.
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
mycelite - Mycelite is a SQLite extension that allows you to synchronize changes from one instance of SQLite to another.
vaxine - Rich-CRDT database based on AntidoteDB.
multiversion-concurrency-contro