Interactive web-based drum tutor. Upload any MIDI file, listen, practice with real-time fe https://backmeupplz.github.io/drumtutor/
  • TypeScript 98.2%
  • HTML 1.4%
  • CSS 0.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Nikita Kolmogorov a6ca8d34d8 Add funding links
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 15:24:41 -07:00
.github Add funding links 2026-10-08 15:24:41 -07:00
public Fix GitHub Pages URL to match actual repo owner 2026-03-06 14:39:37 -08:00
src Fix build errors, add README, meta tags, and GitHub Pages assets 2026-03-06 14:38:51 -08:00
.gitignore Add listen-mode interactions, segment playhead, and MIDI parsing fixes 2026-03-06 07:06:26 -08:00
index.html Fix GitHub Pages URL to match actual repo owner 2026-03-06 14:39:37 -08:00
package-lock.json Initial implementation: full drum learning app 2026-03-05 15:53:51 -08:00
package.json Initial implementation: full drum learning app 2026-03-05 15:53:51 -08:00
README.md Fix GitHub Pages URL to match actual repo owner 2026-03-06 14:39:37 -08:00
tsconfig.app.json Initial implementation: full drum learning app 2026-03-05 15:53:51 -08:00
tsconfig.json Initial implementation: full drum learning app 2026-03-05 15:53:51 -08:00
tsconfig.node.json Initial implementation: full drum learning app 2026-03-05 15:53:51 -08:00
vite.config.ts Initial implementation: full drum learning app 2026-03-05 15:53:51 -08:00

DrumTutor

Interactive web-based drum tutor. Upload any MIDI file, listen to the drum part, then practice along with real-time hit detection and feedback. Connect a MIDI drum pad or use your keyboard.

Try it live

Features

  • MIDI file upload — drop in any .mid file and the app extracts the drum track automatically
  • Listen mode — play back the drum part with scrolling notation so you can hear and see what to play
  • Practice mode — play along at any tempo with real-time hit grading (correct / early / late / miss)
  • Auto-learn curriculum — progressive system that breaks songs into segments and gradually increases BPM
  • MIDI input — plug in any MIDI drum pad or electronic kit for real instrument practice
  • Adjustable BPM — slow down difficult parts and work your way up to full speed
  • Metronome — built-in click track with configurable time signatures
  • Drum notation — color-coded note lanes with General MIDI drum mapping
  • Recent files — quickly reload previously opened MIDI files from browser storage

Tech stack

Development

npm install
npm run dev

Open http://localhost:5173/drumtutor/ in your browser.

Build

npm run build
npm run preview

License

MIT