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
  324d63d2_4784_427e_6adb_09eb9e7ab5a4["drizzle()"]
  a31a3294_138f_5fe3_66a6_78efb3064274["driver.ts"]
  324d63d2_4784_427e_6adb_09eb9e7ab5a4 -->|defined in| a31a3294_138f_5fe3_66a6_78efb3064274
  068740e8_2543_b6bc_c68c_e62bdd7764f1["construct()"]
  324d63d2_4784_427e_6adb_09eb9e7ab5a4 -->|calls| 068740e8_2543_b6bc_c68c_e62bdd7764f1
  style 324d63d2_4784_427e_6adb_09eb9e7ab5a4 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-orm/src/neon-http/driver.ts lines 171–226

export function drizzle<
	TSchema extends Record<string, unknown> = Record<string, never>,
	TClient extends NeonQueryFunction<any, any> = NeonQueryFunction<false, false>,
>(
	...params: [
		TClient | string,
	] | [
		TClient | string,
		DrizzleConfig<TSchema>,
	] | [
		(
			& DrizzleConfig<TSchema>
			& ({
				connection: string | ({ connectionString: string } & HTTPTransactionOptions<boolean, boolean>);
			} | {
				client: TClient;
			})
		),
	]
): NeonHttpDatabase<TSchema> & {
	$client: TClient;
} {
	if (typeof params[0] === 'string') {
		const instance = neon(params[0] as string);
		return construct(instance, params[1]) as any;
	}

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

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

		if (typeof connection === 'object') {
			const { connectionString, ...options } = connection;

			const instance = neon(connectionString, options);

			return construct(instance, drizzleConfig) as any;
		}

		const instance = neon(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/neon-http/driver.ts.
Where is drizzle() defined?
drizzle() is defined in drizzle-orm/src/neon-http/driver.ts at line 171.
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