QUESTPIE
Operate in Production

Migrations

Database migrations — generate, up, down, push, fresh, reset.

QUESTPIE provides CLI commands for database schema management.

Development: Push

During development, use push to sync schema directly:

bunx questpie push

This applies schema changes without creating migration files.

Production: Migrations

For production, use migration files for auditable schema changes:

Generate

bunx questpie migrate:generate

Creates a migration file in your configured directory.

Run migrations

bunx questpie migrate:up

Rollback

bunx questpie migrate:down

Fresh (destructive)

Drop everything and re-run all migrations:

bunx questpie migrate:fresh
Destroys all data. Development only.

Reset

Reset migration tracking state:

bunx questpie migrate:reset

Configuration

questpie.config.ts
export default runtimeConfig({
	cli: {
		migrations: {
			directory: "./src/migrations",
		},
	},
});

Seeds

Populate the database with initial data:

bunx questpie seed:run

Seed files go in the configured seeds directory:

questpie.config.ts
cli: {
  seeds: {
    directory: "./src/seeds",
  },
}
  • Database — PostgreSQL setup
  • CLI — All CLI commands

On this page