Skip to content

caching-tools/next-shared-cache

Repository files navigation

@neshca/cache-handler

npm package Dependencies License

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.

Features

  • 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 the neshCache function to replace unstable_cache for more control over caching.
  • neshClassicCache Function: Use the CacheHandler in the Pages Router to cache the result of expensive operations in the getServerSideProps 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 ↗.

Getting Started

Enhance your application's caching with our Installation and First Steps Guide. This guide covers installation, basic configuration, and practical examples for quick integration.

Examples

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.

Requirements

  • Next.js: 13.5.1 or newer (below 15.0.0).
  • Node.js: 18.17.0 or newer.

Documentation

For detailed documentation, visit our Documentation Page.

Contributing

We welcome contributions! Check out our Contributing Guide for more information.

License

This project is licensed under the MIT License.