- Notifications
You must be signed in to change notification settings - Fork0
Quell is an easy-to-use, lightweight JavaScript library providing a client- and server-side caching solution for GraphQL. Use Quell to prevent redundant client-side API requests and to minimize costly server-side response latency.
License
SebastienFauque/Quell
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Quell is an easy-to-use, lightweight JavaScript library providing a client- and server-side caching solution and cache invalidation for GraphQL.
Accelerated byOS Labs and developed byJinhee Choi,Nayan Parmar,Tashrif Sanil,Tim Frenzel,Robleh Farah,Angela Franco,Ken Litton,Thomas Reeder,Andrei Cabrera,Dasha Kondratenko,Derek Sirola,Xiao Yu Omeara,Nick Kruckenberg,Mike Lauri,Rob Nobile andJustin Jaeger.
- Cache Invalidation implemented in server-side for (add, update, and delete) mutation service newly implemented
- Client-side caching utilizing LokiJS
- Server-side caching utilizing a configurable Redis in-memory data store with batching
- 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 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 fromredis.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 cache 1) query-type requests without variables or directives and 2) mutation-type requests (add, update, and delete) with cache invalidation implemented. Quell will still process 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
About
Quell is an easy-to-use, lightweight JavaScript library providing a client- and server-side caching solution for GraphQL. Use Quell to prevent redundant client-side API requests and to minimize costly server-side response latency.
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Languages
- JavaScript100.0%
