A lightweight TypeScript-first SQLite migration system for Node.js (24+) and Bun. Version 0.6.0 supports multiple SQLite clients (node:sqlite, bun:sqlite, Bun SQL, better-sqlite3) with concurrency-safe database locking, transaction-safe migrations, and rollbacks. Key differentiators: modern API, zero configuration beyond db and migrationsDir, built-in lock table to prevent concurrent migration runs, and TypeScript types included. Released under MIT license.
npm install sqlite-upNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Create a node:sqlite database instance and apply all pending migrations.
Upgrade Node.js to v24 or later, or use Bun as runtime.
Use import syntax or update tsconfig.json with "module": "ESNext".
Install better-sqlite3: npm install better-sqlite3.
Ensure migration files use export const up = async (db) => { ... }; export const down = async (db) => { ... };Create the migrations directory (e.g., mkdir migrations) before running migration.apply().
Switch to import syntax or set "type": "module" in package.json.
Use one of: node:sqlite DatabaseSync, bun:sqlite Database, Bun SQL, or better-sqlite3 instance.
Create the directory (e.g., mkdir ./migrations) before running the migrator.
No dependency data recorded yet.