AI agents: fetch the documentation index at llms.txt. Markdown versions are available by appending .md to any page URL, including this page's markdown.
Offline-first patterns
Build applications that work offline with the outbox, optimistic updates, and automatic reconnection.
Strata Sync works offline by default. Every mutation applies locally, persists in an outbox, and syncs when connectivity returns.
How the outbox works
Every mutation (create, update, delete, archive) follows the same path through the outbox.
sequenceDiagram
participant UI
participant Client
participant Outbox
participant Server
UI->>Client: client.update("Task", id, data)
Client->>Client: Apply optimistically to identity map
Client->>Outbox: Persist transaction (state: "queued")
Client-->>UI: Component re-renders with new data
Outbox->>Server: Send batch (state: "sent")
Server-->>Outbox: Confirm with syncId (state: "awaitingSync")
Server-->>Client: Delta arrives via WebSocket
Client->>Outbox: Remove confirmed transaction (state: "completed")The storage adapter stores the outbox in IndexedDB, so pending mutations survive page reloads, browser crashes, and device restarts. When the client starts, it replays any queued or sent transactions. For the full outbox lifecycle and state definitions, see .