
Prisma Upgrade V7 Esm Support
- 14 installs
- 8 repo stars
- Updated February 9, 2026
- prisma/cursor-plugin
prisma-upgrade-v7-esm-support configures ESM for Prisma ORM v7.
About
The prisma-upgrade-v7-esm-support skill states Prisma v7 ships ES modules only so projects need type module in package.json and tsconfig module ESNext or Node16 with matching moduleResolution. Import syntax uses named ESM imports from generated client paths, not require. Node16 resolution may require .js extensions on relative imports while bundler resolution does not. Covers jest or vitest ESM test config, prisma.config.ts as ESM, and CommonJS migration pitfalls. Alternative NodeNext compiler settings documented for libraries targeting dual consumers. Prisma v7 is ESM-only distribution. Requires package.json type module. tsconfig needs ESNext or Node16 module settings. Named imports replace require for PrismaClient. Node16 may need .js extensions on imports. Project module settings compatible with Prisma v7 imports. User hits ESM import errors after Prisma v7 upgrade. Teams migrating CommonJS Node apps to Prisma v7.
- Prisma v7 is ESM-only distribution.
- Requires package.json type module.
- tsconfig needs ESNext or Node16 module settings.
- Named imports replace require for PrismaClient.
- Node16 may need .js extensions on imports.
Prisma Upgrade V7 Esm Support by the numbers
- 14 all-time installs (skills.sh)
- Ranked #604 of 911 Databases skills by installs in the Skillselion catalog
- Data as of Aug 4, 2026 (Skillselion catalog sync)
prisma-upgrade-v7-esm-support capabilities & compatibility
- Capabilities
- required package.json and tsconfig changes · import syntax migration notes
- Use cases
- database · api development
What prisma-upgrade-v7-esm-support says it does
Prisma ORM v7 ships as an ES module only
npx skills add https://github.com/prisma/cursor-plugin --skill prisma-upgrade-v7-esm-supportAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 14 |
|---|---|
| repo stars | ★ 8 |
| Last updated | February 9, 2026 |
| Repository | prisma/cursor-plugin ↗ |
How do I use Prisma v7 with ESM TypeScript?
Configure ESM package.json and TypeScript settings required for Prisma ORM v7 module-only distribution.
Who is it for?
Teams migrating CommonJS Node apps to Prisma v7.
Skip if: Skip for already ESM-native TypeScript projects.
When should I use this skill?
User hits ESM import errors after Prisma v7 upgrade.
What you get
Project module settings compatible with Prisma v7 imports.
Files
ESM Support
Prisma ORM v7 ships as an ES module only. Your project must be configured for ESM.
Required Changes
package.json
Add the type field:
{
"type": "module",
"scripts": {
"build": "tsc",
"start": "node dist/index.js"
}
}tsconfig.json
Configure for ESM:
{
"compilerOptions": {
"module": "ESNext",
"moduleResolution": "bundler",
"target": "ES2023",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"outDir": "dist"
},
"include": ["src/**/*", "prisma/**/*"]
}Alternative: Node16/NodeNext
{
"compilerOptions": {
"module": "Node16",
"moduleResolution": "Node16",
"target": "ES2022"
}
}Import Syntax Changes
Named imports
// ESM (v7)
import { PrismaClient } from '../generated/client'
// Not: require()File extensions
With moduleResolution: "Node16", add .js extensions:
import { helper } from './utils/helper.js'With moduleResolution: "bundler", extensions are optional.
Minimum Versions
| Requirement | Minimum Version |
|---|---|
| Node.js | 20.19.0 |
| TypeScript | 5.4.0 |
CommonJS Compatibility
If you must use CommonJS:
Dynamic import
// CommonJS file
async function main() {
const { PrismaClient } = await import('../generated/client.js')
const prisma = new PrismaClient()
}Separate ESM file
Create an ESM wrapper:
// prisma.mjs
import { PrismaClient } from '../generated/client'
export const prisma = new PrismaClient()Framework Considerations
Next.js
Next.js supports ESM. Ensure next.config.js → next.config.mjs:
// next.config.mjs
export default {
// config
}Express
Update entry point:
// index.js (with "type": "module")
import express from 'express'
import { PrismaClient } from '../generated/client'
const app = express()
const prisma = new PrismaClient()Jest
Configure Jest for ESM:
{
"jest": {
"preset": "ts-jest/presets/default-esm",
"extensionsToTreatAsEsm": [".ts"],
"transform": {
"^.+\\.tsx?$": ["ts-jest", { "useESM": true }]
}
}
}Or use Vitest which has native ESM support.
Troubleshooting
"ERR_REQUIRE_ESM"
Your code is using require() on an ESM module. Switch to import.
"Cannot use import statement outside a module"
Add "type": "module" to package.json.
TypeScript compilation errors
Ensure module and moduleResolution are set correctly in tsconfig.json.
{
"name": "prisma-upgrade-v7-esm-support",
"version": "7.0.0",
"author": "prisma",
"license": "MIT"
}Related skills
FAQ
What does prisma-upgrade-v7-esm-support do?
prisma-upgrade-v7-esm-support configures ESM for Prisma ORM v7.
When should I use prisma-upgrade-v7-esm-support?
User hits ESM import errors after Prisma v7 upgrade.
Is this skill safe to install?
Review the Security Audits panel on this page before installing in production.