createDb
createDb(
config):Db
Defined in: packages/db/src/create-db.ts:35
Creates a permission-aware database instance bound to the given user.
Call this once per request, passing the authenticated user. The returned Db instance
applies permission checks and WHERE clause injection on every Operation.
Sharing a Db across requests would apply one user’s permissions to another’s queries.
Parameters
Section titled “Parameters”config
Section titled “config”Database configuration including D1 binding, schema, grants, and user.
Returns
Section titled “Returns”A Db instance with query, insert, update, delete, unsafe, batch, and cache methods.
Example
Section titled “Example”import { createDb } from "@cfast/db";import * as schema from "./schema";
const db = createDb({ d1: env.DB, schema, grants: resolvedGrants, user: currentUser, cache: { backend: "cache-api" },});
// All operations check permissions at .run() timeconst posts = await db.query(postsTable).findMany().run({});