Outline

What this site covers and how it's organized — 28 chapters across 13 parts plus Appendix A, both stacks against one SDL contract.

OverviewPrerequisites & the Lab

This site teaches GraphQL API design through one read-oriented view of a shipping and cargo domain: the tracking view. GraphQL here is the aggregation layer that stitches cargo, route legs and handling events into a single query-shaped graph, so a client asks for exactly the shape it needs in one round trip. Every hands-on chapter ships the same example in both Quarkus (SmallRye GraphQL) and Python (Strawberry). Both stacks are code-first and export their SDL; CI diff-checks that export against the canonical SDL in contracts/schema/, so the two stacks never drift, and a graphql-inspector gate fails any change to the canonical SDL that would break an existing client. Real-time is a single chapter (Ch21) that compares subscriptions, SSE and WebSockets and points to a planned WebSockets book. The full arc is below.

Part 0 — Prerequisites & the Lab

Part 1 — Why GraphQL & the Decision Lens

Part 2 — The Schema: SDL & the Type System

Part 3 — Execution: Resolvers, Queries & Mutations

Part 4 — Reliability: Errors & Partial Results

Part 5 — Schema Evolution & the Living Contract

Part 6 — Data Fetching at Scale

Part 7 — Performance & Safety

Part 8 — Security

Part 9 — Observability & the Gateway

Part 10 — Real-time & Client Integration

Part 11 — Testing & Debugging

Part 12 — Running It & the Final Project