Home / Function/ drizzle() — drizzle-orm Function Reference

drizzle() — drizzle-orm Function Reference

Architecture documentation for the drizzle() function in driver.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  f5d5627d_de89_3e76_541b_1c3db01089a5["drizzle()"]
  e62c4bff_79fa_8bf4_2716_485f05b01506["driver.ts"]
  f5d5627d_de89_3e76_541b_1c3db01089a5 -->|defined in| e62c4bff_79fa_8bf4_2716_485f05b01506
  226e224f_f0a8_06f1_40cc_c34d7ea89dfa["construct()"]
  f5d5627d_de89_3e76_541b_1c3db01089a5 -->|calls| 226e224f_f0a8_06f1_40cc_c34d7ea89dfa
  style f5d5627d_de89_3e76_541b_1c3db01089a5 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-orm/src/node-postgres/driver.ts lines 91–140

export function drizzle<
	TSchema extends Record<string, unknown> = Record<string, never>,
	TClient extends NodePgClient = Pool,
>(
	...params:
		| [
			TClient | string,
		]
		| [
			TClient | string,
			DrizzleConfig<TSchema>,
		]
		| [
			& DrizzleConfig<TSchema>
			& ({
				client: TClient;
			} | {
				connection: string | PoolConfig;
			}),
		]
): NodePgDatabase<TSchema> & {
	$client: NodePgClient extends TClient ? Pool : TClient;
} {
	if (typeof params[0] === 'string') {
		const instance = new pg.Pool({
			connectionString: params[0],
		});

		return construct(instance, params[1] as DrizzleConfig<TSchema> | undefined) as any;
	}

	if (isConfig(params[0])) {
		const { connection, client, ...drizzleConfig } = params[0] as (
			& ({ connection?: PoolConfig | string; client?: TClient })
			& DrizzleConfig<TSchema>
		);

		if (client) return construct(client, drizzleConfig);

		const instance = typeof connection === 'string'
			? new pg.Pool({
				connectionString: connection,
			})
			: new pg.Pool(connection!);

		return construct(instance, drizzleConfig) as any;
	}

	return construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;
}

Domain

Subdomains

Calls

Frequently Asked Questions

What does drizzle() do?
drizzle() is a function in the drizzle-orm codebase, defined in drizzle-orm/src/node-postgres/driver.ts.
Where is drizzle() defined?
drizzle() is defined in drizzle-orm/src/node-postgres/driver.ts at line 91.
What does drizzle() call?
drizzle() calls 1 function(s): construct.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free