next-cache-handlers
v1.0.0
Published
Redis cache handler for Next.js cacheHandlers ("use cache")
Maintainers
Readme
next-cache-handlers
Redis cache handler for Next.js 16
cacheHandlers
("use cache" / "use cache: remote").
Install
pnpm add next-cache-handlers redis
pnpm add -D next@16Usage
Env handler (no local file)
// next.config.ts
import { createRequire } from "node:module"
import type { NextConfig } from "next"
const require = createRequire(import.meta.url)
const nextConfig: NextConfig = {
cacheHandlers: {
default: require.resolve("next-cache-handlers/redis"),
remote: require.resolve("next-cache-handlers/redis"),
},
}
export default nextConfigEnvironment:
| Variable | Required | Description |
| ---------------------------- | -------- | ------------------------------------------------------------------------------------------------ |
| REDIS_URL | yes | Redis connection URL. If unset, the handler loads but always misses (so next build survives). |
| REDIS_DB | no | Logical Redis database index. Invalid values throw when the handler loads if REDIS_URL is set. |
| NEXT_CACHE_HANDLERS_PREFIX | no | Key prefix. Default next:cache:v1 |
Factory (custom URL / db / prefix)
Create a local file Next can resolve:
// cache-handler.js
import { createRedisCacheHandler } from "next-cache-handlers"
export default createRedisCacheHandler({
url: process.env.REDIS_URL,
database: 1,
prefix: "myapp",
})// next.config.ts
import { createRequire } from "node:module"
const require = createRequire(import.meta.url)
export default {
cacheHandlers: {
default: require.resolve("./cache-handler.js"),
remote: require.resolve("./cache-handler.js"),
},
}