Flexible API for replacing the default Next.js cache, enabling custom caching solutions for multi-instance self-hosted deployments.
🎉 Version 1.8.0 has been released! It now includes the neshClassicCache
function ↗, that allows you to cache the results of expensive operations in the getServerSideProps
and API routes.
Do not forget the registerInitialCache
instrumentation hook ↗, that allows the cache to be pre-populated with the initial data when the application starts.
Check out the changelog for more details.
Welcome to @neshca/cache-handler
(pronounced /ˈnæʃkʌ/
), a specialized ISR/Data cache API crafted for Next.js applications. This library simplifies configuring shared cache strategies in distributed environments, such as multiple, independent application instances. It offers a flexible and easy-to-integrate solution for custom cache strategies, especially for Redis.
- Shared Cache for Distributed Environments: Perfect for self-hosted deployments with multiple application instances.
- Easy Customization: Provides a straightforward API with pre-configured Handlers.
- On-Demand Revalidation: Simplifies revalidation across all application replicas.
- TTL Management: Automatic cache cleanup to keep storage space efficient.
- Support for Next.js Routers: Full support and one setup for the Pages and the App Router.
neshCache
Function: Utilize theneshCache
↗ function to replaceunstable_cache
for more control over caching.neshClassicCache
Function: Use the CacheHandler in the Pages Router to cache the result of expensive operations in thegetServerSideProps
and API routes.- Pre-populate the Cache with Initial Data: Automatically pre-populate the cache with the initial data when the application starts using the instrumentation hook ↗.
Enhance your application's caching with our Installation and First Steps Guide. This guide covers installation, basic configuration, and practical examples for quick integration.
Explore the versatility of @neshca/cache-handler
in our Examples Section with real-world scenarios. Learn how to build a custom Handler by following this guide.
- Next.js: 13.5.1 or newer.
- Node.js: 18.17.0 or newer.
For detailed documentation, visit our Documentation Page.
We welcome contributions! Check out our Contributing Guide for more information.
This project is licensed under the MIT License.