Define your models once — get TypeScript types, runtime validation, and DB metadata from a single .as model.
Documentation · SQLite Adapter
SQLite adapter for @atscript/db with a swappable driver architecture. Ships with a BetterSqlite3Driver for better-sqlite3 and supports custom drivers for node:sqlite (Node 22.5+), sql.js, or any other SQLite engine.
pnpm add @atscript/db-sqlite better-sqlite3
# Optional — enables @db.search.vector via the sqlite-vec extension:
pnpm add sqlite-vecimport { DbSpace } from "@atscript/db";
import { createAdapter } from "@atscript/db-sqlite";
const db = createAdapter("./myapp.db");
const users = db.getTable(UsersType);
await users.insertOne({ name: "John", email: "john@example.com" });- Swappable driver via
TSqliteDriverinterface (5 methods) - Built-in
BetterSqlite3Driverfor immediate use (with optional{ vector: true }andloadExtensionshooks) - MongoDB-style filter translation to parameterized SQL (no injection risk)
- Automatic schema management from
@db.*annotations - FTS5 full-text search support
- Vector similarity search via
sqlite-vec—vec0shadow tables with AI/AU/AD sync triggers, KNN with partition push-down, threshold control - Embedded object flattening and
@db.jsonstorage - Schema sync via
@atscript/db/sync
MIT