Next Crud
next-crud
is a helper library that creates CRUD API routes with one simple function based on a Prisma model for Next.js.
Starting from version 3 of the lib, we only support Prisma v5 and above. Please install version 2 of the lib if you are using Prisma v4 or older.
Documentation
The documentation is available here
Overview
yarn add @premieroctet/next-crud
Given the following Prisma schema:
model User {
id Int @id @default(autoincrement())
name String?
email String?
}
Create the file /pages/api/[...nextcrud].ts.
with:
import NextCrud, { PrismaAdapter } from '@premieroctet/next-crud'
import { NextApiRequest, NextApiResponse } from 'next'
const handler = async (req: NextApiRequest, res: NextApiResponse) => {
const nextCrudHandler = await NextCrud({
adapter: new PrismaAdapter({
prismaClient: myPrismaClientInstance,
}),
})
return nextCrudHandler(req, res)
}
export default handler
And get your full featured CRUD routes!
| Endpoint | Description |
---|
List | GET /api/users | Get all the users |
Get | GET /api/users/[id] | Get one user |
Add | POST /api/users | Create one user |
Edit | PUT /api/users/[id] | Update one user |
Partial edit | PATCH /api/users/[id] | Update one user (partial) |
Delete | DELETE/api/users/[id] | Delete one user |
Example
Contributing
You can run the example project to test your modifications. Make sure to run yarn watch
in the root folder.