Registry / database / drizzle-orm-crsqlite-wasm

drizzle-orm-crsqlite-wasm

JSON →
library0.0.7jsnpmunverified

Drizzle ORM adapter for CR-SQLite WASM (vlcn) enabling Drizzle's query building and migrations in browser environments. Current version 0.0.7 targets Drizzle ORM ^0.43.1 and @vlcn.io/xplat-api ^0.15.0. It uses Web Crypto for hashing instead of Node's crypto. This package is intended as a temporary solution until it merges into official drizzle-orm. Requires manual migration processing via glob imports and SHA-256 hash generation.

npm install drizzle-orm-crsqlite-wasm
INSTALL
IMPORT
SIG · DRIZZLE-ORM-CRSQLI
D
drizzle-orm-crsqlite-wasm
databasejavascriptv0.0.7
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

drizzle
import { drizzle } from 'drizzle-orm-crsqlite-wasm'
const { drizzle } = require('drizzle-orm-crsqlite-wasm')
ESM-only package; CommonJS require() will not work.
migrate
import { migrate } from 'drizzle-orm-crsqlite-wasm/migrator'
import { migrate } from 'drizzle-orm-crsqlite-wasm'
migrate is exported from a subpath, not the main entry.
crsqliteWasm
import { initWasm } from '@vlcn.io/crsqlite-wasm'
import initWasm from 'crsqlite-wasm'
The crsqlite-wasm package is under @vlcn.io scope, not standalone.

Shows setup with CR-SQLite WASM init, Drizzle DB creation, and running a migration then query.

import { initWasm } from '@vlcn.io/crsqlite-wasm'; import { drizzle, migrate } from 'drizzle-orm-crsqlite-wasm'; import { migrate } from 'drizzle-orm-crsqlite-wasm/migrator'; import * as schema from './schema'; async function main() { const sqlite = await initWasm(); const sql = await sqlite.open('test'); const db = drizzle(sql, { schema, logger: true }); const migrations = []; // preprocessed migration objects await migrate(db, { migrations }); const countries = await db.select().from(schema.countries).all(); console.log(countries); } main().catch(console.error);
Debug
Known issues
gotchaThis package is unofficial and may break when Drizzle ORM or CR-SQLite WASM update. The goal is to merge into drizzle-orm, so APIs may change.
fix
Watch GitHub for merges; pin dependency versions.
affects: >=0.0.0
gotchaMigrations require manual preprocessing: you must export SQL via import.meta.glob and generate SHA-256 hashes using Web Crypto. There is no built-in migration folder handler.
fix
Follow the README instructions to create migration index, hash function, and getMigrations helper.
affects: >=0.0.0
gotchaThis adapter only works in browsers or environments with Web Crypto API (globalThis.crypto.subtle). It will not work in Node.js <18 or older browsers.
fix
Use a polyfill or run only in modern browser/Deno/Bun with Web Crypto.
affects: >=0.0.0
gotchaThe package is ESM-only. Using require() will throw a runtime error.
fix
Use import syntax and ensure your project is configured for ESM.
affects: >=0.0.0
Errors
Common errors & fixes
Error: Cannot find module 'drizzle-orm-crsqlite-wasm'
Package not installed or missing from node_modules.
fix
Run `npm install drizzle-orm-crsqlite-wasm`
TypeError: drizzle is not a function
Using default import instead of named import.
fix
Use `import { drizzle } from 'drizzle-orm-crsqlite-wasm'`
TypeError: migrate is not a function
Importing migrate from the wrong path.
fix
Use `import { migrate } from 'drizzle-orm-crsqlite-wasm/migrator'`
Error: crypto.subtle is undefined
Running in an environment without Web Crypto API (e.g., older Node.js, insecure context).
fix
Ensure you are in a secure context (HTTPS/localhost) and use modern browser/Deno/Bun.
SyntaxError: Cannot use import statement outside a module
Project not configured as ESM or using .mjs extension.
fix
Add "type": "module" to package.json or rename file to .mjs.
Upgrade
Version history
0.0.7latest on npm
Audit
Dependencies
drizzle-ormrequiredPeer dependency; Drizzle ORM core required for query building and schema definitions
@vlcn.io/xplat-apirequiredPeer dependency; provides CR-SQLite WASM initialization and SQLite binding
Agent activity
9 hits · last 30 days
node
6
Bingbot
1
Resources
drizzle-orm-crsqlite-wasm — npm install drizzle-orm-crsqlite-wasm · libregistry