Registry / database / dexie-orm-addon

dexie-orm-addon

JSON →
library0.4.3jsnpmunverified

An ORM addon for Dexie.js that provides schema definitions, model relationships, and CRUD helpers for IndexedDB. Current stable version is 0.4.3 (alpha, pre-1.0), released with low frequency. It requires Dexie.js as a peer dependency. Key differentiators: adds ActiveRecord-style class mapping, supports hasMany/belongsTo relationships, and provides a migration system. Limited to Dexie.js ecosystem; not suited for non-Dexie projects.

npm install dexie-orm-addon
INSTALL
IMPORT
SIG · DEXIE-ORM-ADDON
D
dexie-orm-addon
databasejavascriptv0.4.3
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.

DexieORM
import { DexieORM } from 'dexie-orm-addon'
const DexieORM = require('dexie-orm-addon').DexieORM
ESM default; CommonJS users must destructure require.
Model
import { Model } from 'dexie-orm-addon'
const { Model } = require('dexie-orm-addon').default
Named export from the package.
Field
import { Field } from 'dexie-orm-addon'
Decorator-like factory for schema fields.

Shows basic setup: create Dexie instance, attach DexieORM, define a Model with fields, register, and perform a save operation.

import Dexie from 'dexie'; import { DexieORM, Model, Field } from 'dexie-orm-addon'; const db = new Dexie('MyDB'); const orm = new DexieORM(db); class User extends Model { static tableName = 'users'; @Field() name: string = ''; @Field() email: string = ''; } orm.register(User); async function demo() { await db.version(1).stores({ users: '++id, name, email' }); await db.open(); const user = new User({ name: 'Alice', email: 'alice@example.com' }); await user.save(); console.log('User saved:', user.id); } demo();
Debug
Known issues
deprecatedv0.x API is unstable and may break in minor updates; avoid in production.
fix
Pin to exact version, or wait for 1.0.0 release.
affects: >=0.0.0 <1.0.0
gotchaModels must be registered before opening the database or schema changes will not apply.
fix
Always call orm.register() before db.open().
affects: >=0.1.0
gotchaField decorators require TypeScript compilation with 'experimentalDecorators' enabled.
fix
Set 'experimentalDecorators': true in tsconfig.json.
affects: >=0.1.0
Errors
Common errors & fixes
Cannot find name 'Field'
TypeScript not recognizing decorator or missing import.
fix
Ensure 'import { Field } from 'dexie-orm-addon'' and enable 'experimentalDecorators' in tsconfig.json.
Error: Model 'TableName' is not registered
Model class used before being registered with DexieORM.
fix
Add 'orm.register(MyModel)' before any database operations.
Dexie is not a constructor
Missing or incorrect import of Dexie (likely wrong destructuring).
fix
Use import Dexie from 'dexie' (ESM) or const Dexie = require('dexie').default (CommonJS).
Upgrade
Version history
0.4.3latest on npm
Audit
Dependencies
dexierequiredPeer dependency - this addon extends Dexie classes and requires an existing Dexie instance.
Agent activity
4 hits · last 30 days
node
4
Resources
dexie-orm-addon — npm install dexie-orm-addon · libregistry