drizzleForSQLite() — drizzle-orm Function Reference
Architecture documentation for the drizzleForSQLite() function in studio.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 1a968317_891c_454b_77a6_20e6f61521b5["drizzleForSQLite()"] 82de12f8_a8ca_9d38_8da8_9ac945d81e01["studio.ts"] 1a968317_891c_454b_77a6_20e6f61521b5 -->|defined in| 82de12f8_a8ca_9d38_8da8_9ac945d81e01 a3bd30a5_eb46_2554_e473_0327928a9aaf["startStudioSQLiteServer()"] a3bd30a5_eb46_2554_e473_0327928a9aaf -->|calls| 1a968317_891c_454b_77a6_20e6f61521b5 72630e5c_93c3_75d3_29f3_af0928ebe15c["studio.handler()"] 72630e5c_93c3_75d3_29f3_af0928ebe15c -->|calls| 1a968317_891c_454b_77a6_20e6f61521b5 d7ecc303_7005_43ee_f3ad_fa9fa658b409["getCustomDefaults()"] 1a968317_891c_454b_77a6_20e6f61521b5 -->|calls| d7ecc303_7005_43ee_f3ad_fa9fa658b409 style 1a968317_891c_454b_77a6_20e6f61521b5 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-kit/src/serializer/studio.ts lines 371–433
export const drizzleForSQLite = async (
credentials: SqliteCredentials | D1BindingCredentials,
sqliteSchema: Record<string, Record<string, AnySQLiteTable>>,
relations: Record<string, Relations>,
schemaFiles?: SchemaFile[],
casing?: CasingType,
): Promise<Setup> => {
const customDefaults = getCustomDefaults(sqliteSchema, casing);
if ('driver' in credentials && credentials.driver === 'd1') {
const { connectToD1 } = await import('../cli/connections');
const sqliteDB = await connectToD1(credentials.binding);
const dbUrl = 'd1://binding';
const dbHash = createHash('sha256').update(dbUrl).digest('hex');
return {
dbHash,
dialect: 'sqlite',
driver: 'd1',
packageName: 'd1',
proxy: sqliteDB.proxy,
transactionProxy: sqliteDB.transactionProxy,
customDefaults,
schema: sqliteSchema,
relations,
schemaFiles,
casing,
};
}
const { connectToSQLite } = await import('../cli/connections');
const sqliteDB = await connectToSQLite(credentials);
let dbUrl: string;
if ('driver' in credentials) {
const { driver } = credentials;
if (driver === 'd1-http') {
dbUrl = `d1-http://${credentials.accountId}/${credentials.databaseId}/${credentials.token}`;
} else {
assertUnreachable(driver);
}
} else {
dbUrl = credentials.url;
}
const dbHash = createHash('sha256').update(dbUrl).digest('hex');
return {
dbHash,
dialect: 'sqlite',
driver: 'driver' in credentials ? credentials.driver : undefined,
packageName: sqliteDB.packageName,
proxy: sqliteDB.proxy,
transactionProxy: sqliteDB.transactionProxy,
customDefaults,
schema: sqliteSchema,
relations,
schemaFiles,
casing,
};
};
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does drizzleForSQLite() do?
drizzleForSQLite() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/serializer/studio.ts.
Where is drizzleForSQLite() defined?
drizzleForSQLite() is defined in drizzle-kit/src/serializer/studio.ts at line 371.
What does drizzleForSQLite() call?
drizzleForSQLite() calls 1 function(s): getCustomDefaults.
What calls drizzleForSQLite()?
drizzleForSQLite() is called by 2 function(s): startStudioSQLiteServer, studio.handler.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free