ReasonStack
Menu

— Grain Sessions · the course

Build a Grain app, top to bottom.

Whole Grain applications, built from scratch on screen — no slides, just the real work. Watch the line get built, then open the same app as code and read exactly how it's put together. Start at episode one.

— Read the code

The app from the sessions is open code.

grain-todo-list is the real, running application built across the series — every event, command, and read model in one readable repo. No toy snippets: the whole thing, where you can see how the primitives actually compose.

Open grain-todo-list ↗

— The path

Five sessions, in order.

Each session adds a layer of the same app. Durations are exact; the focus tracks the build arc, scratch to shipped.

  1. 1

    Orientation and the first events

    1h 48m

    Set up a Grain app from scratch and model the domain as events and commands — the only path to state change.

  2. 2

    Read models and the screen

    1h 24m

    Build projections (pure reducers) and queries — where a query is usually a whole screen.

  3. 3

    Reacting asynchronously

    1h 54m

    Wire to-do processors and periodic tasks; turn events into event-driven workflows.

  4. 4

    The reactive front end

    1h 22m

    Stream server-rendered UI with Datastar over SSE — the same architecture for web and terminal.

  5. 5

    Multi-tenancy and shipping

    57m

    Make tenancy structural (AI-safe by construction); package, test, and ship.

More sessions are added as the series grows. Subscribe to @obneyai to catch new ones.