Inspiration
Muscribe was created with the understanding that one of the biggest barriers to learning an instrument or studying music is reading sheet music. Many beginners struggle with traditional notation, which can feel like an overwhelming hurdle when trying to understand or play music. My goal was to simplify this process by allowing users to instantly convert audio into note names, enabling them to focus on learning and practicing the motions.
What it does
Muscribe transforms MIDI files into readable note names with perfect timing to the music. The notes appear on screen exactly when they’re played, offering a clear, easy-to-follow visual that aligns with the timing of the track. This feature helps learners practice directly with the music, making it easier to understand rhythms and melodies without needing to first decode sheet music.
How we built it
I used Python to process and convert MIDI files into note name and timing data, then displayed the notes to a frontend in an Electron app. Flask was used to connect the frontend and backend.
Challenges we ran into
My laptop had a lot of nit-picky permission that made it hard for me to make the close/minimize buttons and control the window. Also, the images kept becoming blurry.
Accomplishments that we're proud of
I'm proud to have made an app I will actually use because my least favorite part about playing the piano is learning new music, but with this app, the first few times playing a piece will be much more enjoyable.
What we learned
I've never made the entirety of a project before, it was an experience learning how to connect frontend and backend.
What's next for muscribe - audio into note names
I plan to add support for more file formats. Additionally, features for learning such as a controlling playback speed and pausing are my goals.


Log in or sign up for Devpost to join the conversation.