For React developers
Mastering Relay
Understand Relay's data model, fragments, mutations, and pagination when building GraphQL applications.
Start with a lesson that meets you where you are.
Try questions to check what you understand.
Sign in to keep your practice progress together.
Lessons
32 of 58 topics have lessons available today. Choose any available lesson.
- 01
Stop Thinking in Queries (Think in Fragments)
Read the lesson, then try the practice.
- 02
Fragments as Composition Units
Read the lesson, then try the practice.
- 03
Fragment Colocation Principle
Read the lesson, then try the practice.
- 04
Composing Fragment Trees
Read the lesson, then try the practice.
- 05
Data Masking Architecture
Read the lesson, then try the practice.
- 06
Parent-Child Data Boundaries
Read the lesson, then try the practice.
- 07
Enforced Component Contracts
Read the lesson, then try the practice.
- 08
Breaking the Masking Rules
Read the lesson, then try the practice.
- 09
Identity and Cache Truth
Read the lesson, then try the practice.
- 10
Global Object Identification
Read the lesson, then try the practice.
- 11
Node Interface Requirements
Read the lesson, then try the practice.
- 12
Normalization and Cache Mechanics
Read the lesson, then try the practice.
- 13
Reading Data the Relay Way
Read the lesson, then try the practice.
- 14
Fragment Consumption Patterns
Read the lesson, then try the practice.
- 15
useFragment for Components
Read the lesson, then try the practice.
- 16
useLazyLoadQuery for Routes
Read the lesson, then try the practice.
- 17
usePreloadedQuery Pattern
Read the lesson, then try the practice.
- 18
Refetchable Fragments
Read the lesson, then try the practice.
- 19
Writing Data Without Chaos
Read the lesson, then try the practice.
- 20
Mutation Strategies
Read the lesson, then try the practice.
- 21
Declarative Mutation Configs
Read the lesson, then try the practice.
- 22
Optimistic Updates Done Right
Read the lesson, then try the practice.
- 23
Lists, Scale, and Reality
Read the lesson, then try the practice.
- 24
Connection Specification
Read the lesson, then try the practice.
- 25
Pagination Invariants
Read the lesson, then try the practice.
- 26
usePaginationFragment Hook
Read the lesson, then try the practice.
- 27
Advanced Patterns
Read the lesson, then try the practice.
- 28
Suspense and Concurrent Rendering
Read the lesson, then try the practice.
- 29
Suspense Boundaries Placement
Read the lesson, then try the practice.
- 30
Error Handling Architecture
Read the lesson, then try the practice.
- 31
Performance Mental Models
Read the lesson, then try the practice.
- 32
Apollo brain vs Relay brain
Read the lesson, then try the practice.
Topics without lessons yet
These are part of the outline. Lessons are not available for them yet.
- Type Safety Guarantees
- ID Encoding Strategies
- Identity Across Boundaries
- Flat Record Storage
- Automatic Update Propagation
- When Identity Breaks
- useRefetchableFragment Hook
- Pagination Refetch Patterns
- Colocation vs Prop Drilling
- Imperative Store Updaters
- Reading and Writing Store
- Optimistic Response Shapes
- Rollback Mechanics
- Server Authority Principle
- Edges and Nodes Structure
- PageInfo Contract
- Cursor Pagination Logic
- Connection Stability
- Why Relay Hates Arrays
- Transitions with useTransition
- Streaming and Incremental Delivery
- Query Error Boundaries
- Mutation Error Handling
- Subscription and Re-render Rules
- Store Subscription Optimization
- Request Deduplication