Recipes
Recipes
One page per composition of what ships: the shape of a screen, the exchange, testing, UIKit, view models, porting from Relay, and the build integrations.
- AgentsThe page a coding agent reads first: what to read, the shape of a screen, what never to write, what to run, and a review checklist.
- Previews and testsA store without a server: a fixture committed as a response, recorded transports, a held mutation, a rule tested with a value.
- The exchangeA challenge, a retry and a deadline over the transport's one verb, compiled in both runtimes.
- UIKit and AppKitA handle held by a controller: the same reads, without SwiftUI.
- Views and view modelsA Kotlin handle without a composition: a view model behind Android Views reads through
snapshotFlow. - Derived state outside viewsA model over
Observationsthat keeps a value computed from the store. - Discover once, refresh by idThe pattern for external keys: look a subject up by its natural key once, then refresh any number of them through
nodes(ids:). - Porting from RelayRelay's words beside Baton's, in Swift and in Kotlin; what differs on purpose; what is not ported and why.
- The compiler's command line
batonc: the command's contract for a build outside SwiftPM. - GradleThe Kotlin runtime from Maven Central and the compiler as a task.
- BazelThe compiler as a toolchain and one rule over its command.
Baton