Skip to content

packages/drizzle/src

Nestelia Drizzle ORM Module

Integrates drizzle-orm with nestelia's dependency injection system. Supports all drizzle-orm dialects (PostgreSQL, MySQL, SQLite) and multiple simultaneous database instances via custom injection tokens.

Example

typescript
import { DrizzleModule } from 'nestelia/drizzle';
import { drizzle } from 'drizzle-orm/node-postgres';
import { Pool } from 'pg';

@Module({
  imports: [
    DrizzleModule.forRoot({
      db: drizzle(new Pool({ connectionString: process.env.DATABASE_URL })),
      isGlobal: true,
    }),
  ],
})
export class AppModule {}

Classes

ClassDescription
DrizzleModuleDrizzleModule — integrates drizzle-orm with nestelia's dependency injection.

Functions

FunctionDescription
getDrizzleOptionsTokenBuilds the per-instance options token for a given drizzle instance token.
InjectDrizzleParameter/property decorator that injects a Drizzle ORM database instance.

Interfaces

InterfaceDescription
DrizzleModuleAsyncOptionsOptions for asynchronously configuring the Drizzle module.
DrizzleModuleOptionsOptions for synchronously configuring the Drizzle module.
DrizzleOptionsFactoryFactory interface for creating Drizzle module options.

Variables

VariableDescription
DRIZZLE_INSTANCEDefault injection token for the Drizzle ORM database instance.
DRIZZLE_MODULE_OPTIONSBase injection token for the raw Drizzle module options object.

Released under the MIT License.