Awesome-omni-skill prisma-database-setup

Guides for configuring Prisma with different database providers (PostgreSQL, MySQL, SQLite, MongoDB, etc.). Use when setting up a new project, changing databases, or troubleshooting connection issues. Triggers on "configure postgres", "connect to mysql", "setup mongodb", "sqlite setup".

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/prisma-database-setup-huynhsang2005" ~/.claude/skills/diegosouzapw-awesome-omni-skill-prisma-database-setup-68a824 && rm -rf "$T"
manifest: skills/development/prisma-database-setup-huynhsang2005/SKILL.md
source content

Prisma Database Setup

Comprehensive guides for configuring Prisma ORM with various database providers.

When to Apply

Reference this skill when:

  • Initializing a new Prisma project
  • Switching database providers
  • Configuring connection strings and environment variables
  • Troubleshooting database connection issues
  • Setting up database-specific features
  • Generating and instantiating Prisma Client

Rule Categories by Priority

PriorityCategoryImpactPrefix
1Provider GuidesCRITICALprovider names
2Prisma PostgresHIGH
prisma-postgres
3Client SetupCRITICAL
prisma-client-setup

System Prerequisites (Prisma ORM 7)

  • Node.js 20.19.0+
  • TypeScript 5.4.0+

Bun Runtime

If you're using Bun, run Prisma CLI commands with

bunx --bun prisma ...
so Prisma uses the Bun runtime instead of falling back to Node.js.

Supported Databases

DatabaseProvider StringNotes
PostgreSQL
postgresql
Default, full feature support
MySQL
mysql
Widespread support, some JSON diffs
SQLite
sqlite
Local file-based, no enum/scalar lists
MongoDB
mongodb
NOT SUPPORTED IN v7 (Use v6)
SQL Server
sqlserver
Microsoft ecosystem
CockroachDB
cockroachdb
Distributed SQL, Postgres-compatible
Prisma Postgres
postgresql
Managed serverless database

Configuration Files

Prisma v7 uses two main files for configuration:

  1. prisma/schema.prisma
    : Defines the
    datasource
    block.
  2. prisma.config.ts
    : Configures the connection URL (replaces env loading in schema).

Driver Adapters (Prisma ORM 7)

Prisma ORM 7 uses the query compiler by default, which requires a driver adapter. Choose the adapter and driver for your database and pass the adapter to

PrismaClient
.

DatabaseAdapterJS Driver
PostgreSQL
@prisma/adapter-pg
pg
CockroachDB
@prisma/adapter-pg
pg
Prisma Postgres
@prisma/adapter-ppg
@prisma/ppg
MySQL / MariaDB
@prisma/adapter-mariadb
mariadb
SQLite
@prisma/adapter-better-sqlite3
better-sqlite3
SQLite (Turso/LibSQL)
@prisma/adapter-libsql
@libsql/client
SQL Server
@prisma/adapter-mssql
node-mssql

Example (PostgreSQL):

import 'dotenv/config'
import { PrismaClient } from '../generated/client'
import { PrismaPg } from '@prisma/adapter-pg'

const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL })
const prisma = new PrismaClient({ adapter })

Prisma Client Setup (Required)

Prisma Client must be installed and generated for any database.

  1. Install Prisma CLI and Prisma Client:

    bun add -d prisma
    bun add @prisma/client
    
  2. Add a generator block (output is required in Prisma v7):

    generator client {
      provider = "prisma-client"
      output   = "../generated"
    }
    
  3. Generate Prisma Client:

    bunx --bun prisma generate
    
  4. Instantiate Prisma Client with the database-specific driver adapter:

    import { PrismaClient } from '../generated/client'
    import { PrismaPg } from '@prisma/adapter-pg'
    
    const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL })
    const prisma = new PrismaClient({ adapter })
    
  5. Re-run

    prisma generate
    after every schema change.

Quick Reference

PostgreSQL

datasource db {
  provider = "postgresql"
}

generator client {
  provider = "prisma-client"
  output   = "../generated"
}

MySQL

datasource db {
  provider = "mysql"
}

generator client {
  provider = "prisma-client"
  output   = "../generated"
}

SQLite

datasource db {
  provider = "sqlite"
}

generator client {
  provider = "prisma-client"
  output   = "../generated"
}

MongoDB (Prisma v6 only)

datasource db {
  provider = "mongodb"
  url      = env("DATABASE_URL")
}

generator client {
  provider = "prisma-client-js"
}

Rule Files

See individual rule files for detailed setup instructions:

references/postgresql.md
references/mysql.md
references/sqlite.md
references/mongodb.md
references/sqlserver.md
references/cockroachdb.md
references/prisma-postgres.md
references/prisma-client-setup.md

How to Use

Choose the provider reference file for your database, then apply

references/prisma-client-setup.md
to complete client generation and adapter setup.