Time travel for Quilt cells. Fork, rewind, replay, merge. The killer feature that makes Quilt a database, not just a runtime.
at(t) — the value at any past timeEvery cell has history. Ask for the value at any timestamp. The engine returns the latest version whose timestamp ≤ t.
fork() — like git branchSnapshot the engine at a point in time. Continue with new changes. Later, rewind to the fork or merge with another fork.
diff(from, to) — what changedGet a per-cell summary of what changed between two times. Useful for "what's different between these two reports?"
replay() — walk forwardIterate the events that happened after a fork, in order. Useful for "replay this user's session" or "show me everything that happened".
merge() — combine two enginesTake two engines, merge their histories. Conflicts resolved deterministically by Lamport clock + tiebreaker. Save, share, sync.
Every cell has its own undo. Just rewind the affected cell to the previous version.
Just ask. The history knows.
Try a different budget. If it doesn't work out, rewind.
Two peers, two engines, merge. No server needed.
Every cell knows every change. Compliance is built in.
Replay the cell graph. See what the state was at each step.
No dependencies. No build step. Just import and go.
$ npm install quilt-time
View on GitHub →
Back to Quilt