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 dd6edcd6_b093_7d62_248e_53e45adb74b4["drizzle()"] 5eb41267_daaa_4ab2_fd1c_fe0fdff5c37a["driver.ts"] dd6edcd6_b093_7d62_248e_53e45adb74b4 -->|defined in| 5eb41267_daaa_4ab2_fd1c_fe0fdff5c37a style dd6edcd6_b093_7d62_248e_53e45adb74b4 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-orm/src/sqlite-proxy/driver.ts lines 53–101
export function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(
callback: RemoteCallback,
batchCallback?: AsyncBatchRemoteCallback | DrizzleConfig<TSchema>,
config?: DrizzleConfig<TSchema>,
): SqliteRemoteDatabase<TSchema> {
const dialect = new SQLiteAsyncDialect({ casing: config?.casing });
let logger;
let cache;
let _batchCallback: AsyncBatchRemoteCallback | undefined;
let _config: DrizzleConfig<TSchema> = {};
if (batchCallback) {
if (typeof batchCallback === 'function') {
_batchCallback = batchCallback as AsyncBatchRemoteCallback;
_config = config ?? {};
} else {
_batchCallback = undefined;
_config = batchCallback as DrizzleConfig<TSchema>;
}
if (_config.logger === true) {
logger = new DefaultLogger();
} else if (_config.logger !== false) {
logger = _config.logger;
cache = _config.cache;
}
}
let schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;
if (_config.schema) {
const tablesConfig = extractTablesRelationalConfig(
_config.schema,
createTableRelationsHelpers,
);
schema = {
fullSchema: _config.schema,
schema: tablesConfig.tables,
tableNamesMap: tablesConfig.tableNamesMap,
};
}
const session = new SQLiteRemoteSession(callback, dialect, schema, _batchCallback, { logger, cache });
const db = new SqliteRemoteDatabase('async', dialect, session, schema) as SqliteRemoteDatabase<TSchema>;
(<any> db).$cache = cache;
if ((<any> db).$cache) {
(<any> db).$cache['invalidate'] = cache?.onMutate;
}
return db;
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does drizzle() do?
drizzle() is a function in the drizzle-orm codebase, defined in drizzle-orm/src/sqlite-proxy/driver.ts.
Where is drizzle() defined?
drizzle() is defined in drizzle-orm/src/sqlite-proxy/driver.ts at line 53.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free