s-m-r-t
Open the s-m-r-t source on GitHub Switch to dark color scheme
← All packages
Web & UI v0.57.40 New

@happyvertical/smrt-web

A manifest-generated browser data runtime with typed collections, persistence, live updates, and offline mutation replay.

Source ↗

What it gives you

A manifest-generated browser data runtime with typed collections, persistence, live updates, and offline mutation replay.

  1. 01SvelteKit hydration seeding
  2. 02SSE live updates with polling fallback
  3. 03Durable IndexedDB outbox and version-aware persistence
  4. 04WebMCP tools
  5. 05Policy-governed bespoke tools and a dependency-free view-intent entry
  6. 06A page-side registry of the WebMCP tools the page itself registered

The page can see its own tools

installWebMcpPageToolRegistry on the /webmcp-page-tools subpath records every registered tool while forwarding to the native context. An in-page assistant can then list and run the same tools an outside agent sees. The entry is dependency-free. Collection fetches accept a plain array, a list envelope with an items property, or a data envelope.

Offline writes and read persistence solve different problems

OfflineOutboxConfig keeps a durable IndexedDB write queue, with Web Locks leader election, exponential backoff, sync-apply-only replay, and onConflict and onSyncStateChange callbacks. persistCollection is the separate read cache: it rehydrates through SQLite-WASM or OPFS, writes back, and invalidates when the manifest hash changes.