TinyJoin logoTinyJoin

Guides

These guides start with the smallest useful TinyJoin application and reveal storage, transactions, custom Workers, and compatibility details only when they become relevant.

The caveats collect what TinyJoin deliberately does not do, and which projects to reach for when that matters.

For exact method and type signatures, use the API reference.

Getting started

TinyJoin is a relational database that runs locally in a browser. The normal setup is one import and one asynchronous call. Read more.

Storage and lifecycle

TinyJoin supports an ephemeral memory database and an opt-in persistent browser database. Both use the same Worker and page-native engine. Read more.

SQL compatibility

TinyJoin implements its own deliberately bounded, PostgreSQL-shaped SQL dialect. It is not PostgreSQL compiled to WebAssembly, a PostgreSQL server, or a general PostgreSQL replacement. Familiar syntax is used where the smaller runtime can give it clear and deterministic semantics. Read more.

Caveats

TinyJoin is small on purpose, and being small has costs. This page collects what an application signs up for, in one place, so that the decision gets made before the schema does. Read more.

Transactions and changes

Each TinyJoin query is atomic. Use a callback transaction when several related row mutations must commit together. Read more.

Custom Workers

Most applications should use create(). It constructs TinyJoin's packaged module Worker and preserves the relative Worker, OPFS runtime, and WebAssembly assets during the supported Vite build path. Read more.

Agents guide

This guide follows the agents.md convention and gives AI coding assistants a compact, current model of TinyJoin. Read more.

Offline

OPFS persists database rows. Reopening the application without a network also requires its HTML, JavaScript, CSS, Worker, and WASM files to be available. TinyJoin's optional Vite plugin caches the complete production build, including lazy assets that the first visit has not used yet. Read more.

Releases

This is a reverse chronological summary of TinyJoin releases and their public compatibility boundaries. Read more.