drizzleForPostgres() — drizzle-orm Function Reference
Architecture documentation for the drizzleForPostgres() function in studio.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD f115fdf8_009e_f0a5_2e08_c650dffd2496["drizzleForPostgres()"] 82de12f8_a8ca_9d38_8da8_9ac945d81e01["studio.ts"] f115fdf8_009e_f0a5_2e08_c650dffd2496 -->|defined in| 82de12f8_a8ca_9d38_8da8_9ac945d81e01 3f2f3ef6_5edc_28b2_d8ba_6463008848f8["startStudioPostgresServer()"] 3f2f3ef6_5edc_28b2_d8ba_6463008848f8 -->|calls| f115fdf8_009e_f0a5_2e08_c650dffd2496 72630e5c_93c3_75d3_29f3_af0928ebe15c["studio.handler()"] 72630e5c_93c3_75d3_29f3_af0928ebe15c -->|calls| f115fdf8_009e_f0a5_2e08_c650dffd2496 d7ecc303_7005_43ee_f3ad_fa9fa658b409["getCustomDefaults()"] f115fdf8_009e_f0a5_2e08_c650dffd2496 -->|calls| d7ecc303_7005_43ee_f3ad_fa9fa658b409 style f115fdf8_009e_f0a5_2e08_c650dffd2496 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-kit/src/serializer/studio.ts lines 278–325
export const drizzleForPostgres = async (
credentials: PostgresCredentials | {
driver: 'pglite';
client: PGlite;
},
pgSchema: Record<string, Record<string, AnyPgTable>>,
relations: Record<string, Relations>,
schemaFiles?: SchemaFile[],
casing?: CasingType,
): Promise<Setup> => {
const { preparePostgresDB } = await import('../cli/connections');
const db = await preparePostgresDB(credentials);
const customDefaults = getCustomDefaults(pgSchema, casing);
let dbUrl: string;
if ('driver' in credentials) {
const { driver } = credentials;
if (driver === 'aws-data-api') {
dbUrl = `aws-data-api://${credentials.database}/${credentials.secretArn}/${credentials.resourceArn}`;
} else if (driver === 'pglite') {
dbUrl = 'client' in credentials ? credentials.client.dataDir || 'pglite://custom-client' : credentials.url;
} else {
assertUnreachable(driver);
}
} else if ('url' in credentials) {
dbUrl = credentials.url;
} else {
dbUrl =
`postgresql://${credentials.user}:${credentials.password}@${credentials.host}:${credentials.port}/${credentials.database}`;
}
const dbHash = createHash('sha256').update(dbUrl).digest('hex');
return {
dbHash,
dialect: 'postgresql',
driver: 'driver' in credentials ? credentials.driver : undefined,
packageName: db.packageName,
proxy: db.proxy,
transactionProxy: db.transactionProxy,
customDefaults,
schema: pgSchema,
relations,
schemaFiles,
casing,
};
};
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does drizzleForPostgres() do?
drizzleForPostgres() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/serializer/studio.ts.
Where is drizzleForPostgres() defined?
drizzleForPostgres() is defined in drizzle-kit/src/serializer/studio.ts at line 278.
What does drizzleForPostgres() call?
drizzleForPostgres() calls 1 function(s): getCustomDefaults.
What calls drizzleForPostgres()?
drizzleForPostgres() is called by 2 function(s): startStudioPostgresServer, studio.handler.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free