3 ms·
FYI, Zero uses incremental view maintenance internally as the core of its sync engine: https://zero.rocicorp.dev/docs/introduction https://zero.rocicorp.dev/do
by aboodman 1y ago
FYI, Zero uses incremental view maintenance internally as the core of its sync engine:
https://zero.rocicorp.dev/docs/introduction https://zero.rocicorp.dev/docs/introduction
IVM is what allows the core feature of our DX: that users can just do a fairly large query with sorts and joins, like:
zero.query.posts.where('authorID', 42)
.orderBy('created', 'desc')
.limit(1000)
.related('comments',
c => c.orderBy('created', 'desc').limit(10))
... and we sync updates to this query incrementally to the client.
TanStack DB also uses IVM, but only client-side currently.
If you are interested in such things, you can take a poke around the source here: https://github.com/rocicorp/mono/tree/main/packages/zql https://github.com/rocicorp/mono/tree/main/packages/zql. Or come find us in Discord: https://discord.rocicorp.dev/ https://discord.rocicorp.dev/