# Momo's Number Garden A small, static lesson that helps young learners connect quantities from 0 to 10, make ten, and model addition and subtraction with counters. It begins with a clickable worked example, moves through three short practice stops, and ends with a two-step transfer story. ## Run it No package installation, build step, API key, or paid service is needed. The verified reference runtimes are **Python 3.12.14** for the local static preview and **Node.js 24.20.0** for tests. Open this folder in a terminal and run: ```sh python -m http.server 8000 --bind 127.0.0.1 ``` Open `http://127.0.0.1:8000` in a current browser. Stop the local server with Ctrl+C. This command serves the same static files for development and a production preview. Installation and build commands are intentionally absent: there is no compilation, package dependency, or lockfile to resolve. Run the domain tests with Node.js: ```sh node --test model.test.mjs node model-property-check.mjs ``` For a static host, publish the folder contents as-is over HTTPS. The source remains runnable without that host. Browser speech synthesis is optional and may use different voices or be unavailable depending on the device. ## What's included - `index.html`, `styles.css`, and `app.mjs`: responsive interface, interactions, optional read-aloud, focus handling, and activity navigation. - `content.mjs`: practice targets and original story data kept separate from the interface. - `model.mjs`: ten-frame, make-ten, and multi-step story state rules. - `model.test.mjs`: automated checks for quantities, number bonds, story arithmetic, invalid states, and retry/reuse behavior. - `EDUCATOR_GUIDE.md`: goals, prerequisites, activity pacing, adaptations, limitations, and learning references. - `TEST_REPORT.md`: acceptance checklist and current evidence status. - `OFFICIAL_BRIEF.md`: the complete marketplace brief as captured before implementation. Progress is held in page memory only and is cleared by Start over, replay, or closing/reloading the page. The site has no accounts, learner names, wallets, analytics, tracking, ads, chat, image uploads, or network grading. Links to learning references are in the adult-facing guide only. ## Browser expectations and known limits The site requires a browser with JavaScript modules, semantic HTML controls, and CSS Grid. Speech output depends on the browser's built-in speech feature. Six model tests, 1,584 exhaustive two-step cases, and 211 automated Edge browser checks passed. The browser pass covered keyboard interaction, touch emulation, reset/retry, optional audio absence, reduced motion, and 360/768/1280px layouts. See `TEST_REPORT.md` and `WALKTHROUGH.md` for evidence and limits. No child, screen-reader-user or physical-phone testing, measured lesson duration, or learning-gain study was performed. This is not a diagnostic tool. ## License Original source is offered under the MIT License in `LICENSE`. The inline fox artwork, layout, copy, and activity content were made for this project. No external fonts, images, or code libraries are bundled.