Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork1
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
oslabs-beta/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.
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
- IP-Rate Limiting to protect your server.
- Successfully handling cache mutations with cache invalidation.
- Quell/server offers optional depth and cost limiting middleware to protect your GraphQL endpoint! To use, please explore the@quell/server readme.
- Server-side cache now caches entire queries in instances where it is unable to cache individual datapoints.
- Client-side caching utilizing JavaScript's built in Map data structure.
- Client-side caching utilizing Least Recently Used (LRU) caching strategy.
- Server-side caching utilizing a configurable Redis in-memory data store with batching.
- 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.
- A easy-to-use Chrome Developer Tools extension designed for Quell users. With this extension, users can:
- Inspect and monitor the latency of client-side GraphQL/Quell requests.
- Make and monitor the latency of GraphQL/Quell requests to a specified server endpoint.
- View server-side cache data and contents, with the ability to manually clear the cache
- Features require zero-to-minimal configuration and can work independently of
@quell/client
and@quell/server
A demonstration of how Quell can be implemented to protect against costly network requests.
Try Quell outhere
- 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.
Quell Developer Tool is currently available as a Chrome Developer Tools extension. The easiest way to get it is toadd it from the Chrome Web Store.
Interested in making a contribution to Quell? Find our open-source contribution guidelineshere. Please feel free to also review the larger future direction for Quell in the Client and Server readme's.
Thank you for your interest and support!
-Team Quell
Accelerated byOS Labs and developed byAndrew Dai,Cassidy Komp,Ian Weinholtz,Stacey Lee,Jonah Weinbum,Justin Hua,Lenny Yambao,Michael Lav,Angelo Chengcuenca,Emily Hoang,Keely Timms,Yusuf Bhaiyat,Hannah Spencer,Garik Asplund,Katie Sandfort,Sarah Cynn,Rylan Wessel,Alex Martinez,Cera Barrow,Jackie He,Zoe Harper,David Lopez,Sercan Tuna,Idan Michael,Tom Pryor,Chang Cai,Robert Howton,Joshua Jordan,Jinhee 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.
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
Code of conduct
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Packages0
Languages
- TypeScript94.6%
- JavaScript3.0%
- SCSS2.2%
- Other0.2%