Prisma 7 Compatibility
PalJS v9 is designed for Prisma 7. This page covers the key Prisma 7 changes and how PalJS handles them.
Prisma 7 Breaking Changes
1. New Generator Provider
2. Driver Adapter Architecture
Prisma 7 requires explicit driver adapters instead of direct database connections:
Available adapters:
@prisma/adapter-pg— PostgreSQL@prisma/adapter-libsql— SQLite / LibSQL / Turso@prisma/adapter-d1— Cloudflare D1@prisma/adapter-planetscale— PlanetScale
3. prisma.config.ts
Prisma 7 uses a TypeScript config file at the project root:
4. DMMF No Longer Exported
This is the most impactful change for PalJS. In Prisma 6:
In Prisma 7:
5. Import Path Changes
How PalJS v9 Handles These Changes
DMMF Captured at Generate Time
The @paljs/generator runs as a native Prisma generator. It receives the full DMMF during prisma generate and writes it to disk:
Use this for PrismaSelect field validation:
PrismaSelect Without DMMF
PrismaSelect works without DMMF — it generates select/include objects based on the GraphQL query. Without DMMF, field validation is skipped (invalid fields may pass through to Prisma and cause runtime errors).
For most use cases with generated types, this is fine since the generated code already matches the schema.
No @prisma/internals Dependency
v9 does not depend on @prisma/internals (which was unstable and removed in Prisma 7). All schema introspection happens through the official @prisma/generator-helper API at generate time.
Setup with Prisma 7
1. Install Dependencies
2. Update schema.prisma
3. Create prisma.config.ts
4. Create paljs.config.ts
5. Update PrismaClient Instantiation
6. Generate
SQLite / LibSQL Setup
For SQLite (commonly used in development):