Prisma + Neon: use @prisma/adapter-neon, do not hand-roll the driver
Installing @neondatabase/serverless and ws alongside Prisma to wire up Neon manually is the outdated path. The official adapter bundles everything and is what the docs prescribe.
Prisma + Neon: use the official adapter
The trap
Older tutorials wire Prisma to Neon by installing @neondatabase/serverless and ws and hand-rolling a driver adapter. That was before @prisma/adapter-neon existed. Agents following stale training data still do this, and then fight version mismatches between the driver, the ws package, and Prisma.
The rule
Neon's current Prisma guide says it plainly: do not install @neondatabase/serverless or ws as separate packages. The @prisma/adapter-neon package bundles everything needed.
npm install @prisma/client @prisma/adapter-neon dotenvimport { PrismaClient } from './generated/prisma';
import { PrismaNeon } from '@prisma/adapter-neon';
const adapter = new PrismaNeon({ connectionString: process.env.DATABASE_URL });
export const prisma = new PrismaClient({ adapter });Checklist
- One adapter package, no manual ws wiring.
- Pooled
DATABASE_URLinto the adapter (app traffic), direct string for the CLI. - If a tutorial tells you to
neonConfig.webSocketConstructor = ws, it predates the adapter; follow the current guide instead.
Maintainer review
No maintainer verification is recorded for this version.
This records the version a maintainer checked. It does not assert that the version is the latest upstream release.