Skip to content

Installation

MountSQLI is a pnpm monorepo, but you install it like any other package. The core package re-exports the tree-shakeable surface; driver packages are added separately.

Terminal window
npm install @mountsqli/core

Pick the driver for your database. Each driver self-registers on import.

Terminal window
pnpm add @mountsqli/driver-sqlite

Uses Node’s built-in node:sqlite. Requires Node ≥ 22.5.

Add only what you use. Each is a separate package:

Terminal window
pnpm add @mountsqli/auth # passwords, JWT, RBAC, RLS, OAuth
pnpm add @mountsqli/api # REST / OpenAPI / RPC codegen
pnpm add @mountsqli/storage # signed URLs, versioning, S3
pnpm add @mountsqli/realtime # hub, presence, live queries
pnpm add @mountsqli/cache # L1/L2/query cache
pnpm add @mountsqli/ai # natural language to SQL
Tool Minimum
Node.js 22.5+ (for the node:sqlite driver)
pnpm 11 (recommended)
TypeScript 5.9+
Module system ESM only
import { mountsqli, defineTable, int, text } from "@mountsqli/core";
const ping = defineTable("ping", { id: int().pk() });
const db = mountsqli({ driver: "sqlite", url: ":memory:", tables: [ping] });
console.log("MountSQLI is ready");
  • Forgetting to install a driver — you get a MountError("CONFIG", "unknown driver").
  • Using CommonJS require — MountSQLI is ESM-only.