Series overview

Spring Edition

Build the Loop

A semester-long treasure-hunt platform that puts human-in-the-loop machine learning into practice. Teams design clues, the AI sidecar scores free-text answers, and every hint request or annotation becomes a training signal. Rust/Axum API, Python/FastAPI AI sidecar, React dashboard, Flutter mobile app, Zitadel OIDC auth, PostgreSQL, Redis.

PDF Project guide 15 chapters on building the platform — schema design, API, auth, AI integration, testing, and deployment. Handbook Read online 15 chapters as a searchable web book — schema, API, auth, AI, testing, and deployment. Reader Interactive reader The 15 Spring chapters in the interactive reader with TTS and ambient audio.
Docker Run locally Launch the full stack with a single command: cd editions/spring && docker compose up

Platform stack

Rust / AxumREST API, answer validation, hint engine
Python / FastAPIAI sidecar, LLM integration, scoring
React / ViteCreator dashboard, observer view
FlutterMobile player app (iOS + Android)
OIDC / ZitadelIdentity, roles, session management
PostgreSQLGame state, answers, annotations
RedisSession cache, real-time leaderboard
To run the full platform locally (requires Docker):
cd editions/spring && docker compose up

The Spring platform is the experiential counterpart to the Winter textbook. Where Winter explains the five-dimension HITL framework analytically, Spring builds a system that exercises all five dimensions: uncertainty detection via the hint engine, intervention design via the creator interface, timing via live scoring, stakes calibration via difficulty tiers, and feedback integration via the annotation loop.

The platform has three roles. Creators author hunts through the React dashboard — writing clues, setting difficulty tiers, and previewing AI scoring before publishing. Players participate via the Flutter mobile app, submitting free-text answers and requesting hints when stuck. Observers watch the live leaderboard and can flag annotations for review, closing the human-in-the-loop cycle in real time.

Every design decision in the platform is documented in the 15-chapter project guide. The guide reads as a companion to the codebase — not a tutorial, but a record of the choices made and why. Auth is handled by Zitadel OIDC; no custom identity code is required.