diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..c5ebd98 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,31 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## Commands + +```bash +yarn dev # start dev server (Vite) +yarn build # tsc type-check + Vite production build +yarn preview # serve the production build locally +``` + +No test runner is configured. + +## Architecture + +This is a learning project — a canvas-based sprite animation demo. Content is organized by chapter under `src/module/chapter-*/`. + +**Data flow for Chapter 1:** + +1. `src/main.ts` — entry point; injects a `` into `#app` and calls `chapter1()`. +2. `chapter-1.ts` — owns the canvas and the `requestAnimationFrame` loop. Reads the current animation state name (e.g. `"run"`, `"idle"`) and advances `gameFrame` each tick to step through sprite frames. +3. `select.ts` — creates a `