π Introduction
Prisma is one of the best ORMs for Node.js and TypeScript. But when building APIs, we often need to:
β
Filter records dynamically
β
Sort results based on query parameters
β
Implement pagination for large datasets
β
Select only specific fields
While Prisma provides built-in features, implementing these manually can become repetitive. Thatβs why I created Prisma Query Enhancerβa simple package to handle this efficiently.
π What is Prisma Query Enhancer?
Prisma Query Enhancer is an NPM package that makes Prisma queries cleaner and more reusable.
π§ Installation
sh
npm install prisma-query-enhancer
π οΈ How to Use It
Let's say we need to fetch users with filtering, sorting, pagination, and selected fields. Hereβs how Prisma Query Enhancer simplifies it:
ts
import PrismaQueryEnhancer from 'prisma-query-enhancer';
const query = new PrismaQueryEnhancer(prisma.user, req.query)
.filter()
.sort()
.limitFields()
.paginate()
.execute();
const users = await query;
π₯ No more boilerplate!
π How It Works
- filter() β Removes unwanted query fields & applies filtering
- sort() β Sorts based on request parameters
- limitFields() β Selects only the necessary fields
- paginate() β Implements pagination
π¦ Why Use Prisma Query Enhancer?
β Saves time by reducing boilerplate code
β Works seamlessly with Prisma ORM
β Handles complex queries effortlessly
π Try It Now!
π¦ Install via NPM:
`sh
npm install prisma-query-enhancer`
π GitHub: https://github.com/unwrapsolutions/prisma-query-enhancer
π NPM: https://www.npmjs.com/package/prisma-query-enhancer
π¬ Would love your feedback! Let me know what you think. π
Top comments (0)