Cache me if you can: Wayfair's secret to snappier apps
summary
Claims that using GraphQL caching with Apollo and a normalized cache yields snappy, consistent UI updates across teams. Implements queries in Kotlin + AndroidX/Jetpack, maps to view models, uses watch call with coroutines to re-run when entities change, and LiveData + Picasso to rebind views. Demonstrates an addToCart mutation that updates the shared normalized Apollo cache, causing two independently built cart icons to update immediately — decoupled components, worked in live example.
AI-written summary · about
chapters (8)
- 0:00Start
- 0:44Simplifying metrics
- 1:58Data flows between navigations
- 2:21Normalized cache over simplification
- 2:38Shared data binding
- 3:18Making a query
- 4:13View model mapping
- 5:12Federated front-ends
related talks
20mCaching your data graph with Apollo Kotlin
21mCaching your GraphQL data graph
16mLightning Talk: Next-Generation GraphQL Cache Management in Your Android and iOS Apps
37mCaching Deep Dive: The Ultimate Way To Speed up Your GraphQL API
52mState management in a GraphQL era
20mThe Apollo Cache is Your Friend, if You Get To Know It
24mGraphQL Clients
21mCaching GraphQL APIs
