Use this reference map to find public APIs by package or responsibility. The sidebar collects query shapes, client and server APIs, configuration, and limits. The linked pages explain options, examples, and limitations.
For a first project, start with Onboarding. For a task such as pagination, authorization, or deployment, use Guides.
Browser and TypeScript clients
The browser client chooser explains the tradeoffs. These packages share query and view types, but they have different responsibilities.
| Responsibility | Package | Entry points |
|---|---|---|
| Schema, query builder, views, and backend interface | @rindle/client |
createSchema, newQueryBuilder, Store, Backend, ArrayView |
| Local engine over application-supplied rows | @rindle/wasm |
createWasmStore, WasmBackend |
| Flat server query results, without browser WASM | @rindle/remote |
createRemoteStore, RemoteBackend, WsTransport |
| Local engine over normalized server rows | @rindle/normalized |
createNormalizedStore, NormalizedBackend |
| Transport for normalized row subscriptions | @rindle/remote |
createRemoteNormalizedSource, createRemoteOptimisticSource |
| Prediction and replay over a supplied optimistic source | @rindle/optimistic |
createOptimisticStore, OptimisticBackend |
| Standard API-server and daemon integration | @rindle/optimistic |
createRindleClient |
@rindle/client does not connect to a server by itself. The flat remote client
needs a compatible flat-protocol server; the standard daemon emits normalized
rows. The normalized and optimistic source constructors are composition APIs.
They do not all supply the lease, reconnect, and mutation lifecycle of createRindleClient.
Embedded engines and databases
| Responsibility | Package or crate | Entry points and guide |
|---|---|---|
| Native SQLite store in Node (repository build) | @rindle/replica |
createReplicaStore |
| Rust engine | rindle |
Graph, build_pipeline, sources, and views |
| Rust SQLite source | rindle-sqlite |
TableSource and write-through helpers |
| Embedded SQLite with SQL change capture and live queries | rindle-replica |
Db, Cluster, QueryId, Update |
Start with rindle-replica when you want a database in your own Rust process.
Start with the core graph when your application supplies row changes explicitly.
Persistence, writes, delivery, and cleanup depend on that choice.
The repository also contains @rindle/server, a private reference server for
the flat remote protocol. Standard optimistic synced apps use the
API server and data tier.
Query definitions
| Responsibility | API | Guide |
|---|---|---|
| Tables and relationships | table, createSchema, defineRelationships, rel, generated schema.gen.ts |
Schema and migrations |
| Typed query shapes | Filters, relationships, ordering, limits, and aggregates | TypeScript, Rust |
| Named queries and UI data requirements | defineQuery, defineFragment, useRoot, useFragment |
Queries and fragments |
| Individual engine changes | SourceChange, CaughtChange |
Change model, Rust delta consumer |
| Server results retained without subscribers | pinnedQueries, assertPins, readQuery |
Pinned queries |
The TypeScript builder is shared across stores. Named queries add an identity for server resolution. An ordinary SQL statement uses the SQL interface and does not become a live query automatically.
Synced applications
| Responsibility | Package | Entry points and guide |
|---|---|---|
| Browser sync and optimistic state | @rindle/optimistic |
createRindleClient |
| Shared write logic | @rindle/client |
shared, defineMutators, isoTx |
| Server authorization and execution | @rindle/api-server |
createRindleApiServer, registerQueries, sharedApiMutators |
| Component subscriptions | @rindle/react |
RindleProvider, useRoot, useFragment |
| TanStack Start integration | @rindle/tanstack |
createRindleTanStack |
| Server rendering and hydration | @rindle/client, @rindle/react |
createServerStore, RindleSSR, and the SSR lifecycle |
| Development inspection | @rindle/devtools, @rindle/react-devtools |
Devtools |
The manual quickstart connects the required pieces. Framework adapters and devtools are optional. For lower-level package boundaries, see the crate map.
SQL and operations
| Responsibility | Package or tool | Guide |
|---|---|---|
| SQL over HTTP and interactive transactions | @rindle/sql-client, createSqlClient |
Rindle SQL |
| Local development and migrations | @rindle/cli, rindle |
CLI commands |
| Live-query server process | rindled |
Daemon configuration |
| Advanced control-plane access | @rindle/daemon-client |
API server transports |
| PostgreSQL change capture and writes | rindle-pg-gateway, postgresBackend |
PostgreSQL source (preview) |
| Hosting and recovery | Self-hosted deployments or Rindle Cloud | Deployment, Cloud setup |
For a request that fails, read Troubleshooting. For machine-readable documentation, use the coding-agent guide.