Prisma Support
BlazeKit can generate a complete Prisma setup for your models, including the model definition for your schema.prisma
file and a full CRUD controller using the Prisma Client.
What BlazeKit Generates
For each model, BlazeKit creates two things:
- Prisma Schema Model — A ready-to-paste Prisma model definition for
schema.prisma
. - Prisma Controller — A CRUD controller using the Prisma Client.
Example Output
Suppose you have a model User
:
schema.prisma
model User {
id String @id
name String
email String @unique
age Int?
}
BlazeKit will also generate the following Prisma-based controller:
controllers/user.ts
// Prisma Setup (auto-generated)
import { prisma } from "../lib/prisma";
import { User } from "../types/User";
// CRUD Operations for User
export async function createUser(data: User) {
return prisma.user.create({ data });
}
export async function getAllUsers() {
return prisma.user.findMany();
}
export async function getUserById(id: string) {
return prisma.user.findUnique({ where: { id } });
}
export async function updateUser(id: string, data: Partial<User>) {
return prisma.user.update({
where: { id },
data,
});
}
export async function deleteUser(id: string) {
return prisma.user.delete({ where: { id } });
}
Notes
- The generated Prisma schema needs to be manually pasted into your
schema.prisma
file. - After updating the Prisma schema, don't forget to run
npx prisma generate
to update your client. - BlazeKit assumes you have a
prisma
instance exported fromlib/prisma.ts
(you can customize this). - Table (model) names are automatically lowercased in controller methods (e.g.,
User
→user
).