RippleDB
RippleDB
Reference

API Reference

Complete API documentation for all RippleDB packages

API Reference

Complete API documentation for all RippleDB packages.

Core Packages

Package Overview

PackageDepends OnPurpose
@rippledb/corenothingHLC, Change types, merge helpers
@rippledb/servercoreDb interface for server persistence
@rippledb/clientcoreStore interface, sync orchestration
@rippledb/remote-httpclientHTTP transport layer
@rippledb/db-*serverDatabase adapters
@rippledb/materialize-*coreState materializers
@rippledb/store-*clientClient-side stores

Dependency Rules

The dependency graph is strictly enforced:

core(pure logic)server(Db interface)client(Store/Sync)materialize(projectors)db-*(adapters)store-*(adapters)
  • core depends on nothing
  • server and client depend only on core
  • db-* adapters depend on server
  • store-* adapters depend on client
  • materialize-* depend on core

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" });

On this page