Quell is an easy-to-use, lightweight JavaScript library providing a client- and server-side caching solution for GraphQL.
Accelerated by OS Labs and developed by Nick Kruckenberg, Mike Lauri, Rob Nobile and Justin Jaeger.
- Client-side caching utilizing sessionStorage
- Server-side caching utilizing a configurable Redis in-memory data store
- Automatic unique cache key generation
- Partial and exact match query caching
- Programmatic rebuilding of GraphQL queries to fetch only the minimum data necessary to complete the response based upon current cache contents
Quell is divided up into two npm packages:
- Download @quell/client from npm in your terminal with
npm i @quell/client
- Download @quell/server from npm in your terminal with
npm i @quell/server
If not already installed on your server, install Redis.
- Mac-Homebrew:
- At the terminal, type
brew install redis
- After installation completes, type
redis-server
- Your server should now have a Redis database connection open (note the port on which it is listening)
- At the terminal, type
- Linux or non-Homebrew:
- Download appropriate version of Redis from redis.io/download
- Follow installation instructions
- Once Redis is successfully installed, follow instructions to open a Redis database connection (note the port on which it is listening)
- Currently, Quell can only cache query-type requests without arguments, aliases, fragments, variables, or directives. Quell will still process these other requests, but will not cache the responses.
Interested in making a contribution to Quell? Click for our open-source contribution guidelines.
Thank you for your interest and support! Team Quell