Next.js utilities for CRUD operations, designed to work with @asasvirtuais/crud.
npm install asasvirtuais-next @asasvirtuais/crud// app/api/v1/users/route.ts
import { routes } from 'asasvirtuais-next'
import { crud, someBackend } from '@asasvirtuais/crud'
const db = crud(someBackend())
const { list, create } = routes({ implementation: db })
export { list as GET, create as POST }// app/api/v1/users/[id]/route.ts
import { routes } from 'asasvirtuais-next'
import { crud, someBackend } from '@asasvirtuais/crud'
const db = crud(someBackend())
const { find, update, remove } = routes({ implementation: db })
export { find as GET, update as PATCH, remove as DELETE }// app/api/v1/[...slug]/route.ts
import { createDynamicRoute } from 'asasvirtuais-next'
import { crud, someBackend } from '@asasvirtuais/crud'
const db = crud(someBackend())
const handler = createDynamicRoute(db)
export {
handler as GET,
handler as POST,
handler as PATCH,
handler as DELETE
}This creates routes that automatically handle:
GET /api/v1/users→ list usersGET /api/v1/users/123→ find user by IDPOST /api/v1/users→ create userPATCH /api/v1/users/123→ update userDELETE /api/v1/users/123→ delete user
Creates individual route handlers.
Parameters:
config.implementation- CRUD backend instance
Returns:
find- GET handler for single recordslist- GET handler for listing recordscreate- POST handler for creating recordsupdate- PATCH handler for updating recordsremove- DELETE handler for deleting records
Creates a single handler that routes to appropriate CRUD operations based on HTTP method and URL parameters.
Parameters:
implementation- CRUD backend instance
Returns:
- Dynamic route handler function
MIT