prisma-upgrade-v7-prisma-config

от prisma

Конфигурация Prisma. Справочник при использовании этой функции Prisma.

npx skills add https://github.com/prisma/cursor-plugin --skill prisma-upgrade-v7-prisma-config

Prisma Config

Prisma v7 introduces prisma.config.ts as the central configuration file for the Prisma CLI.

Location

Place prisma.config.ts at your project root (next to package.json).

Basic Configuration

import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'

export default defineConfig({
  schema: 'prisma/schema.prisma',
  migrations: {
    path: 'prisma/migrations',
  },
  datasource: {
    url: env('DATABASE_URL'),
  },
})

Configuration Options

schema

Path to your Prisma schema file:

schema: 'prisma/schema.prisma'

datasource.url

Database connection URL:

datasource: {
  url: env('DATABASE_URL'),
}

datasource.directUrl

Direct connection URL (bypassing connection pooler):

datasource: {
  url: env('DATABASE_URL'),
  directUrl: env('DIRECT_DATABASE_URL'),
}

datasource.shadowDatabaseUrl

Shadow database for migrations:

datasource: {
  url: env('DATABASE_URL'),
  shadowDatabaseUrl: env('SHADOW_DATABASE_URL'),
}

migrations.path

Directory for migration files:

migrations: {
  path: 'prisma/migrations',
}

migrations.seed

Seed command for prisma db seed:

migrations: {
  path: 'prisma/migrations',
  seed: 'tsx prisma/seed.ts',
}

Full Example

import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'

export default defineConfig({
  // Schema location
  schema: 'prisma/schema.prisma',
  
  // Migration configuration
  migrations: {
    path: 'prisma/migrations',
    seed: 'tsx prisma/seed.ts',
  },
  
  // Database connection
  datasource: {
    url: env('DATABASE_URL'),
    directUrl: env('DIRECT_DATABASE_URL'),
    shadowDatabaseUrl: env('SHADOW_DATABASE_URL'),
  },
})

Environment Variables

The env() helper

Use env() to reference environment variables:

import { env } from 'prisma/config'

datasource: {
  url: env('DATABASE_URL'),
}

This provides type safety but does NOT load .env files automatically.

Loading .env files

Install and import dotenv:

npm install dotenv
import 'dotenv/config'  // Must be first import
import { defineConfig, env } from 'prisma/config'

Migrating from v6

Before (v6) - schema.prisma

datasource db {
  provider  = "postgresql"
  url       = env("DATABASE_URL")
  directUrl = env("DIRECT_URL")
}

After (v7) - prisma.config.ts

import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'

export default defineConfig({
  schema: 'prisma/schema.prisma',
  datasource: {
    url: env('DATABASE_URL'),
    directUrl: env('DIRECT_URL'),
  },
})

And update schema.prisma:

datasource db {
  provider = "postgresql"
  // URLs now in prisma.config.ts
}

Custom Config Path

Use --config flag with CLI commands:

prisma migrate dev --config ./config/prisma.config.ts

Monorepo Configuration

import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'
import path from 'path'

export default defineConfig({
  schema: path.join(__dirname, 'packages/database/prisma/schema.prisma'),
  migrations: {
    path: path.join(__dirname, 'packages/database/prisma/migrations'),
  },
  datasource: {
    url: env('DATABASE_URL'),
  },
})

Больше skills от prisma

prisma-cli-migrate-reset
prisma
prisma migrate reset
official
prisma-cli-validate
prisma
prisma validate. Справочная информация при использовании этой функции Prisma.
official
prisma-next-extension-upgrade
prisma
Upgrade Prisma Next in your extension. Bumps every `@prisma-next/*` dependency to the requested target (or npm `latest`), runs the per-transition upgrade…
official
adr-review
prisma
Проверить один или несколько ADR свежим взглядом (как участник команды без предварительного контекста), выявить проблемы в повествовании и структуре, затем переписать их. Используйте, когда…
official
prisma-next-upgrade
prisma
Upgrade Prisma Next in your app. Bumps every `@prisma-next/*` dependency from the version pinned in the lockfile to the requested target (or npm `latest`),…
official
prisma-cli
prisma
Полное руководство по командам, опциям и рабочим процессам Prisma CLI для настройки, миграций и операций с базами данных. Охватывает более 20 команд, сгруппированных по приоритету: настройка (init), генерация (generate), разработка (dev), операции с базами данных (db pull/push/seed/execute) и миграции (migrate dev/deploy/reset/status/diff/resolve). Включает изменения в Prisma 7.x: новый файл конфигурации prisma.config.ts, удаленные флаги (--skip-generate, --skip-seed, --schema, --url) и явные...
official
prisma-client-api
prisma
Полный справочник API Prisma Client для запросов к моделям, операций CRUD, фильтрации, связей и транзакций. Охватывает 17 методов запросов к моделям, включая findUnique, findMany, create, update, delete, upsert и массовые операции с вариантами возврата. Предоставляет опции запросов для формирования результатов: select, include, omit, orderBy, take, skip, cursor и distinct. Включает скалярные и логические операторы фильтрации (equals, in, contains, startsWith, lt, gt), а также фильтры по связям (some,...
official
prisma-compute
prisma
Prisma Compute deployment and hosting guide. Use whenever the user mentions Prisma Compute, `prisma.compute.ts`, `defineComputeConfig`, deploying or hosting a Prisma app, `@prisma/cli app deploy`, `compute:deploy`, `create-prisma --deploy`, `PRISMA_SERVICE_TOKEN`, `auth workspace`, Compute apps/deployments/build logs/domains, `@prisma/cli agent install`, localhost vs `0.0.0.0`, deploy port binding, or framework deploy readiness for Hono, Elysia, Next.js, TanStack Start, Astro, Nuxt, Svelte,...
developmentdevopsofficial