Skip to content

add: caching functionality for prisma ORM with only one line of code

Notifications You must be signed in to change notification settings

losefor/prisma-redis-caching

Repository files navigation

cache your project with prisma and redis with single line of code and without the hassle of implementing it by you own self

Installation

  • if you use npm :
    npm i prisma-redis-caching
  • if you use npm :
    yarn add prisma-redis-caching

Usage

  • import the package into your own project
import { createCachingMiddleware } from 'prisma-redis-caching';
  • after you instantiate the prismaClient() create the cachingMiddleware by providing the createCachingMiddleware function the redis instance as the first parameter and caching configuration in the second parameter
const cachingMiddleware = createCachingMiddleware<
    Prisma.ModelName,
    Prisma.PrismaAction
>(redis, [
    {
        model: 'City',
        actions: ['findMany'],
    },
    {
        model: 'Category',
        actions: ['findMany'],
    },
]);

configuration

you can provide configuration the middleware creator which is an array of objects each object you can provide the model that you want to cache it with the actions that will happens

Props type
model any
actions any

NOTE: you can provide generics as the example above to have the proper intellisense

  • Finally provide the cacheMiddleware into prisma middleware
prisma.$use(cachingMiddleware);
  • Have fun 🙄

About

add: caching functionality for prisma ORM with only one line of code

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published