Reference
API Reference
Complete API documentation for all RippleDB packages
API Reference
Complete API documentation for all RippleDB packages.
Core Packages
@rippledb/core
HLC timestamps, Change types, and pure merge logic
@rippledb/server
Db interface and server contracts
@rippledb/client
Client-side sync orchestration
@rippledb/client-query
Final DX: controllers + TanStack Query invalidation
@rippledb/remote-http
HTTP transport for client-server sync
Package Overview
| Package | Depends On | Purpose |
|---|---|---|
@rippledb/core | nothing | HLC, Change types, merge helpers |
@rippledb/server | core | Db interface for server persistence |
@rippledb/client | core | Store interface, sync orchestration |
@rippledb/remote-http | client | HTTP transport layer |
@rippledb/db-* | server | Database adapters |
@rippledb/materialize-* | core | State materializers |
@rippledb/store-* | client | Client-side stores |
Dependency Rules
The dependency graph is strictly enforced:
coredepends on nothingserverandclientdepend only oncoredb-*adapters depend onserverstore-*adapters depend onclientmaterialize-*depend oncore
Type Safety
All packages export TypeScript types. Use the RippleSchema generic for type-safe changes:
type MySchema = {
todos: { id: string; title: string; done: boolean };
users: { id: string; name: string; email: string };
};
// Now all methods are typed
const db = new SqliteDb<MySchema>({ filename: "./data.db" });