4 ms·
Prelude - https://www.getprelude.net/ https://www.getprelude.net/ A progressive web app for improving music sight reading skills. (Also perfect pitch identific
by BHSPitMonkey 11y ago
Prelude - https://www.getprelude.net/ https://www.getprelude.net/
A progressive web app for improving music sight reading skills. (Also perfect pitch identification ability.)
I wasn't happy with my sight reading speed, so I've been building this to help myself practice. Some distinguishing features:
- Web MIDI, to connect to a MIDI keyboard you can use to "answer" the practice questions (works in Chrome for Android or Desktop)
- Web App Manifest, to allow adding to your home screen / desktop and getting a native app feel
- Service Worker (via sw-precache), for offline access (and cache-first loading when online, so it always loads fast)
- Web Audio, to synthesize pitches
- VexFlow, for rendering sheet music to SVG
Built with React, Babel, Webpack; hosted on GitHub Pages. Source: https://github.com/BHSPitMonkey/Prelude https://github.com/BHSPitMonkey/Prelude
- giodamelio 11y agoThat's pretty neat. I have been meaning to work on my sight reading skills. I will have to give it a try with my keyboard later.
- BHSPitMonkey 11y agoLet me know if you have any feedback! Issues/PRs welcome. Note that Android is still a bit finnicky about connecting MIDI devices (using USB-OTG); After accepting the permission request, you might have to go through some permutation of refreshing the page and unplugging/replugging the cable to get it to work.
- d0m 11y agoI know it's for mobile, but you might want to center the page for desktop users, i.e. with a max-width.
- BHSPitMonkey 11y agoBetter layout for larger displays is something I want to work on, but you're right - it's an afterthought for my personal use case. Until then, scaling the page via your web browser does a pretty decent job.
- bobwaycott 11y agoThat's pretty well done. I really need to practice my sight-reading more.
- BHSPitMonkey 11y agoThanks! If you decide to start practicing, let me know what works / what doesn't work.