prisma-fns
prisma-fns copied to clipboard
a revolutionary utility extension for seamless Prisma integration.
Prisma-Fns
Prisma-Fns is a revolutionary utility extension for seamless Prisma integration. It enhances your workflow, simplifies common tasks and functions, and boosts the efficiency of your Prisma-powered applications.
Installation
npm install prisma-fns
Basic Usage
Get Values
// getValues (field, where)
const prisma = new PrismaClient().$extends(getValues);
const user = await prisma.user.getValues("email", {
email: {
contains: "@",
},
});
Log
// console.log
const prisma = new PrismaClient().$extends(log);
const user = await prisma.user.findFirst();
prisma.$log(user);
Exists
const prisma = new PrismaClient().$extends(exists);
// returns boolean
const user = await prisma.user.exists({
id: 1,
});
logPerf
const prisma = new PrismaClient().$extends(logPerf);
const user = await prisma.user.findFirst();
// logs in console
{
model: 'User',
operation: 'findFirst',
args: {},
time: 25.3997129797935
}
remember
// creates singleton
const prisma = new PrismaClient().$extends(remember);
save
// saves object
const prisma = new PrismaClient().$extends(save);
generate slug
const prisma = new PrismaClient().$extends(generateSlug);
const user = await prisma.user.findFirst();
// returns slug
user.slug;
Progress
- [ ] Custom Generators
- [x] Extensions
- [x] Generate Singleton client
- [ ] Fuzzy search feature for specified model
- [ ] Increase Decrease Math Operations for field in provided model
- [ ] Pagination utils
- [ ] Luxon for date time fields
- [ ] Query Optimization Extension
- [ ] Toggle via slug
- [ ] Compare and Update
- [ ] Auto select field/model
- [ ] auto generate slug in provided model
- [ ] deselect password when querying
- [ ] more coming soon...
- [ ] Extras
- [x] log perf logger
- [ ] coming up
- [ ] Docs website
- [ ] Create docs website
- [ ] Example Implementation
- [ ] Tests
- [ ] Unit tests
- [ ] extensions
- [ ] Unit tests
- [x] Deploy to production
- [x] Set up hosting environment
- [x] Configure CI/CD pipeline
- [x] Deploy package
Contributing
If you'd like to contribute, please follow our contribution guidelines.
Support
If you like the project, please consider supporting us by giving a ⭐️ on Github.
Bugs
If you find a bug, please file an issue on our issue tracker on GitHub
License
prisma-fns is open-source software licensed under the MIT license.