A free, local-first learning portal for rhythm reading, drum notation, sight-reading fluency, and a bridge into piano pitch reading. It is designed around short daily sessions and the Roland TD-07 Coach modes.
- Eight-week, 16-lesson curriculum
- Daily 22-minute practice planner
- Rhythm exercise generator and count guides
- TD-07 Coach-mode prompts and practice log
- Spaced-retrieval symbol deck
- Piano landmark-note bridge
- Curated supplies and evidence links
- Browser-local progress; no account or analytics
- Responsive static interface suitable for GitHub Pages
Requirements: Node.js for tests and Python (or any static server) for the site.
npm test
npm run check
npm run serveThen open http://localhost:4173.
Fetching the JSON curriculum requires a local web server. Opening
index.htmldirectly withfile://will not work in most browsers.
sheet-music-lab/
├── data/
│ ├── cards.json # retrieval-practice cards
│ ├── curriculum.json # modules, lessons, and exercises
│ └── resources.json # external references and supplies
├── docs/
│ └── COURSE-GUIDE.md
├── src/
│ ├── app.js # browser interface
│ └── portal-core.mjs # tested learning/progress logic
├── tests/
│ └── portal-core.test.mjs
├── index.html
└── styles.css
- Push the repository to GitHub.
- Open Settings → Pages.
- Set Source to
Deploy from a branch. - Choose
mainand/ (root).
No build step is needed.
Import the repository and use the repository root as the publish directory. No framework preset or build command is required.
The course uses active retrieval, distributed review, interleaved rhythm sets, genuinely unfamiliar examples, immediate timing feedback, and deliberate transfer from rhythm reading to pitch reading. Claims are kept conservative: these methods support learning, but the portal does not promise fixed percentage improvements.
MIT