I have a prior commitment and will not be present for judging - thank you for a fun hackathon!

Inspiration

Singing is my passion and I have been in two rock bands, released an album, and just joined the University Choir here at UIowa. There are a lot of apps/websites/videos available for ear training, vocal exercises, and harmonization practice, but none of them fully met my practice needs fluidly. I wanted an app to be both highly configurable and easy to use so I could practice exactly what I wanted to practice without much fiddling.

What it does

This app currently focuses on providing piano-backed vocal exercises to the user. The intent is that a singer can follow along to these exercises, choosing some syllables to sing on, and matching the pitches played by the piano. This is how the technical aspect of vocal practice usually goes, whether the piano is provided by the singer, a teacher, or a video.

How we built it

The front end of the app is built in the React Javascript framework. It uses React functional components to accept user control to designate and configure exercises, request exercise and audio sample data from the backend, and present the audio data to the Web Audio API for fluid playback. The back end of the app is built in the FastAPI Python framework. It provides an API for the client app to access audio samples and an exercise library. Exercises are stored in a MySQL relational database which maps samples-notes, scale degrees-scales, scale degrees-chords, and chords/scales-exercises. These exercises then identify which samples are needed to be sent to the client for a given exercise.

Share this project:

Updates