Store
data at rest (sql · kv · files · index) — SQL, KV, files, and search index are facets of one Store surface. Drivers are named after protocols, not vendors.
Store is the element for data at rest (sql · kv · files · index).
SQL, KV, files, and search index are facets of one Store surface. Drivers are named after protocols, not vendors.
Governing rule
Drivers are named after protocols, not vendors. Vendor choice lives in images, keyed by role.
At a glance
Store
Essence: data at rest (`sql` · `kv` · `files` · `index`). Replaces: database · cache · KV · file storage · search index.
Drivers available
store.sql
Dev `sqlite` · prod `postgres` via Bun.sql / bun:sqlite.
store.kv
Dev `memory` · prod `redis` (protocol, not vendor).
store.files
Dev `fs` · prod `s3` via Bun.S3.
store.index
Default `pgvector` — RAG without another service.
Example from the teaching apps
Claimed fence from notes — same source the doc-drift gate checks:
examples/notes/src/core.ts
import { store } from "okengine";
import * as schema from "./schema";
export const db = store.sql("notes", { schema });