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

main() — drizzle-orm Function Reference

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

Entity Profile

Dependency Diagram

graph TD
  3ded1af6_3cb8_9c20_d695_ac81c35f7d9c["main()"]
  1a3bd713_160f_6d92_e552_ca0aa1f7d73d["build.ts"]
  3ded1af6_3cb8_9c20_d695_ac81c35f7d9c -->|defined in| 1a3bd713_160f_6d92_e552_ca0aa1f7d73d
  style 3ded1af6_3cb8_9c20_d695_ac81c35f7d9c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-kit/build.ts lines 83–148

const main = async () => {
	await tsup.build({
		entryPoints: ['./src/index.ts'],
		outDir: './dist',
		external: [
			'esbuild',
			'drizzle-orm',
			...driversPackages,
		],
		splitting: false,
		dts: true,
		format: ['cjs', 'esm'],
		outExtension: (ctx) => {
			if (ctx.format === 'cjs') {
				return {
					dts: '.d.ts',
					js: '.js',
				};
			}
			return {
				dts: '.d.mts',
				js: '.mjs',
			};
		},
	});

	await tsup.build({
		entryPoints: ['./src/api.ts'],
		outDir: './dist',
		external: [
			'esbuild',
			'drizzle-orm',
			...driversPackages,
		],
		splitting: false,
		dts: true,
		format: ['cjs', 'esm'],
		banner: (ctx) => {
			/**
			 * fix dynamic require in ESM ("glob" -> "fs.realpath" requires 'fs' module)
			 * @link https://github.com/drizzle-team/drizzle-orm/issues/2853
			 */
			if (ctx.format === 'esm') {
				return {
					js: "import { createRequire } from 'module'; const require = createRequire(import.meta.url);",
				};
			}
			return undefined;
		},
		outExtension: (ctx) => {
			if (ctx.format === 'cjs') {
				return {
					dts: '.d.ts',
					js: '.js',
				};
			}
			return {
				dts: '.d.mts',
				js: '.mjs',
			};
		},
	});

	const apiCjs = readFileSync('./dist/api.js', 'utf8').replace(/await import\(/g, 'require(');
	writeFileSync('./dist/api.js', apiCjs);
};

Domain

Subdomains

Frequently Asked Questions

What does main() do?
main() is a function in the drizzle-orm codebase, defined in drizzle-kit/build.ts.
Where is main() defined?
main() is defined in drizzle-kit/build.ts at line 83.

Analyze Your Own Codebase

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

Try Supermodel Free