api-database-prisma
Database with Prisma ORM
Quick Guide: Use Prisma ORM for type-safe database queries with auto-generated TypeScript types. Schema-first design with declarative migrations. Use
includefor relations,$transactionfor atomic operations. Singleton pattern required in development to avoid connection exhaustion. Always usetx(notprisma) inside interactive transaction callbacks.
<critical_requirements>
CRITICAL: Before Using This Skill
All code must follow project conventions in CLAUDE.md (kebab-case, named exports, import ordering,
import type, named constants)
(You MUST use the singleton pattern for PrismaClient in development to prevent connection exhaustion from hot reloading)
(You MUST use tx parameter (NOT prisma) inside interactive transaction callbacks to ensure atomicity)
(You MUST use include or nested select for relational queries - avoid N+1 by fetching relations in the same query)
(You MUST define @relation with explicit fields and references for all foreign key relationships)