Skip to content

Archonic944/midigym

Repository files navigation

midigym (still beta)

A chord symbol typing test. Aims to be a robust, customizable way of practicing and measuring your chord-reading skills. chrome-capture-2025-6-15

Features

  • Highly customizable: before beginning your test, you have fine-grained control over which root notes and chord types you'd like to play.
  • Simplistic interface: kind of like monkeytype in that it only shows you what you need to see.
  • Free: ad free, payment free, scam free, formaldehyde free, free next week, you name it. ⭐️STAR THIS REPOSITORY⭐️ if you appreciate it!
  • MIDI keyboard support: uses WEBMIDI.js to deliver you stunning low-latency midi-enabled goodness.
  • Regular keyboard support: uses javascript event listners to deliver you stunning, low-latency computer keyboard support.
  • Learn mode: a mode that highlights the notes you need to play for each chord.

Known Issues

Please see the issues page: https://github.com/Archonic944/midigym/issues

You may also submit feature requests to the issues page using the "enhancement" label.

To-do

  • Disperse game logic outside of a single +page.svelte
  • Implement local storage for user records
  • Implement online leaderboards...? (might need help with this one)
  • Enhanced statistics, such as per-chord times and average times
  • Chord inversions
  • Fix Settings pane in Results

Beta testing

The site is polished, but is missing a couple features it would need to be considered "comprehensive". When you play, please to contact me with any small suggestions/personal gripes you may have with the site. If you find a reproducable bug or have a comprehensive suggestion for a new feature, please make a new post on the issues page.

Contributing

I am open to any and all code contributions!

No, not desparate enough...

PLEASE PLEASE PLEASE CONTRIBUTE!!! Fork and make a pull request, suggest new features, mail patches to my house, ANYTHING!!

Large additions are ok, but try not to go overboard (or at least open an issue so we can talk about it before you do)!

Acknowledgements

This project uses:

  • SvelteKit
  • tonaljs
  • WEBMIDI.js

A sincere thank you to the developers maintaining those projects.

About

Like monkeytype, but for chord symbols.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors