← Projects

Next.js + Drizzle

drizzle.config.ts

drizzle.config.tsLines 54-56
Theme:
Section 1 of 11
Section 1/11 • Lines 54-56

Drizzle Kit Configuration

This file configures Drizzle Kit - the CLI tool that handles database

migrations, schema introspection, and the visual database studio.

Drizzle ORM vs Drizzle Kit

AspectDrizzle ORMDrizzle Kit
PurposeRuntime database queriesBuild-time migrations
When UsedApplication codeDevelopment/deployment
Packagedrizzle-ormdrizzle-kit
RunsIn productionIn development
OutputQuery resultsSQL migration files
## Drizzle Kit Commands

CommandScriptPurposeOutput
generatenpm run db:generateCreate migration SQLdrizzle/.sql
pushnpm run db:pushApply to databaseUpdates DB schema
studionpm run db:studioVisual editorOpens UI at local.drizzle.studio
checkdrizzle-kit checkValidate schemaShows errors/warnings
introspectdrizzle-kit introspectReverse engineerCreates schema from DB
## Configuration Options

schema: Path to schema files

  • Single file: './lib/db/schema.ts'
  • Multiple files: './lib/db/.schema.ts'
  • Glob pattern: './lib/db/*\/.ts'
  • out: Migration output directory

  • Where to save .sql files
  • Usually 'drizzle/' or 'migrations/'
  • Commit to version control
  • driver: Database type

  • 'pg' for PostgreSQL (this project)
  • 'mysql2' for MySQL
  • 'better-sqlite3' for SQLite
  • 'turso' for libSQL
  • dbCredentials: Connection details

  • connectionString for PostgreSQL
  • host/port/database for others
  • Uses environment variables
  • Kit Configuration for Migration Management

    ↓ Next Section
    Lines 83-83
    Manually load .env.local because Drizzle Kit runs outside Next.js context. ## Why Manual Loading? ...
    Loading Monaco Editor...
    TypeScript support initializing...