#graphql #exchange #cache #artemis #graphql-client #web


A graph-based normalized cache exchange for the artemis crate

7 releases

0.1.1 Mar 6, 2021
0.1.0 Mar 6, 2021
0.1.0-alpha.4 Apr 26, 2020

#3 in #artemis

28 downloads per month


4.5K SLoC


This is a normalized cache exchange for the artemis GraphQL Client. This is a drop-in replacement for the default CacheExchange that, instead of document caching, caches normalized data by keys and connections between data.

artemis is already quite a comprehensive GraphQL client. However in several cases it may be desirable to have data update across the entirety of an app when a response updates some known pieces of data.

Quick Start

After installing this crate, change the default artemis Client like from something like this:

let client = artemis::ClientBuilder::new("")

to this

use artemis::default_exchanges::{FetchExchange, DedupExchange};
use artemis_normalized_cache::NormalizedCacheExchange;

let client = artemis::ClientBuilder::new("")

TODO: Don't steal urlq's docs you plagiarist


~134K SLoC