Persistence

← Documentation
STRVCT

Local storage, cloud sync, and blob management for object graphs.

Three tiers: the in-memory model, local storage (a record store holding every object pool's rows, plus a content-addressable blob pool), and the cloud, which holds the same rows one record per row, with a version per pool. Each document is its own pool; a folder's contents are the documents whose root rows are placed under it. Mutations are stored locally at the end of each event loop and committed to the cloud asynchronously, as the records changed since the pool's last acknowledged version.

Model SvNode graph in memory mutate load Local Storage Record Store rows by pool + puuid Blob Pool content-addressable commit fetch Cloud Storage Scopes owners, members Records rows, version per pool Cloud Blob Storage blob records Mutations are stored locally at once and committed to the cloud asynchronously; GC collects orphan blobs at both tiers.

Local Object Pools

IndexedDB-backed persistence for domain object graphs using dirty tracking, the local record store (SvLocalRecordStore), and atomic event-loop commits.

View →

Cloud Object Pools

Cloud persistence for object pools: one record per row, a version per pool, and an atomic commit protocol.

View →

Local and Cloud Blob Storage

SHA-256 content-addressable binary asset storage for images, audio, video, and files.

View →