Installation & Quick Start

Get started with Prisma Migrations in minutes

Installation

Install Prisma Migrations in your project:

npm install prisma-migrations

Quick Start

1. Initialize Your Migrations

Create your first migration file:

npx prisma-migrations init

This creates a migration directory structure:

prisma/migrations/
└── [timestamp]_initial_migration/
    └── migration.ts

2. Create a Migration

Generate a new migration file:

npx prisma-migrations create add_users_table

This creates:

prisma/migrations/
└── [timestamp]_add_users_table/
    └── migration.ts

3. Write Your Migration

Edit the generated migration file with TypeScript:

// prisma/migrations/[timestamp]_add_users_table/migration.ts
import type { PrismaClient } from 'prisma-migrations';

export async function up(prisma: PrismaClient) {
  await prisma.$executeRaw`
    CREATE TABLE users (
      id SERIAL PRIMARY KEY,
      email VARCHAR(255) UNIQUE NOT NULL,
      name VARCHAR(255),
      created_at TIMESTAMP DEFAULT NOW()
    )
  `;
}

export async function down(prisma: PrismaClient) {
  await prisma.$executeRaw`DROP TABLE IF EXISTS users`;
}

4. Run Migrations

Apply all pending migrations:

npx prisma-migrations up

5. Rollback (When Needed)

Undo the last migration:

npx prisma-migrations down

Roll back multiple migrations:

npx prisma-migrations down --steps 3

Using with Existing Prisma Projects

Prisma Migrations works seamlessly with existing Prisma projects! It uses the same _prisma_migrations table that Prisma’s native migrations use.

If You Already Have Migrations

You can add Prisma Migrations to an existing project:

  1. Install the package
  2. Run npx prisma-migrations status to see existing migrations
  3. Create new migrations with npx prisma-migrations create
  4. Your new migrations will work alongside existing Prisma migrations

Compatibility

  • Uses Prisma’s standard _prisma_migrations table
  • Works with prisma migrate commands
  • No conflicts with existing migration workflows
  • Fully compatible with Prisma Client

Next Steps