Musician utilities for timing, groove, and harmony.
GrooveLab is a modern, musician-friendly toolbox for timing and theory work. It includes BPM tools, groove quantization, rhythm grids, chord and scale exploration, visualizers, and setlist utilities.
- BPM to milliseconds calculator with tap tempo and delay suggestions
- Groove quantizer with swing grids and MIDI export
- Metronome, rhythm grid, and practice timer
- Chord generator, scale explorer, circle of fifths, and progression planner
- Keyboard and fretboard visualizers
- Pitch analyzer and MIDI analyzer
- Setlist builder with export options
- Next.js 14 (App Router)
- React 18
- Tailwind CSS
- Tone.js (audio playback)
- @tonejs/midi (MIDI export)
Install dependencies:
npm installRun the dev server:
npm run devOpen http://localhost:3000.
npm run dev- start the development servernpm run build- build the appnpm run start- run the production servernpm run lint- run ESLint
This repo includes a GitHub Actions workflow that exports a static build to GitHub Pages on pushes to main.
- In GitHub repo settings, set Pages > Source to GitHub Actions.
- Push to
mainto trigger the deployment.
If your default branch is not main, update the workflow trigger in .github/workflows/deploy.yml.
src/components- UI componentssrc/lib- timing math, audio playback, and MIDI helperssrc/app- application routes
MIT