Inspiration
Musical composition often faces high barriers to entry, deterring potential improvisers due to high costs or lack of experience. However, we believe everyone has the talent to create beautiful music, regardless of their musical education. That's why we created Impromptu, designed to meet the high demand for accessible and effective improvisation software.
What it does
Impromptu guides the user to improvise on a piano, where we suggest possible notes to enhance their musical creation. In the process, Impromptu generates a backing track to harmonize the user’s composition and allow them to download their excerpts. For those inexperienced with music, we provide an intuitive interface and a frequency chart for beginners to better understand music theory.
How we built it
Sveltekit, typescript, tonejs, tailwind css, chartjs
Challenges we ran into
Creating the recommended notes for the user was extremely difficult, as there are many types of improvisations. Additionally, there were many discussions around how much agency the user should have during their composition, as we did not wish to simplify the app by simply clicking on random notes.
Accomplishments that we're proud of
We are proud to have created such a useful and engaging product within such a limited time. Our workflow was highly efficient because we leveraged useful tools and libraries.
What we learned
We learned to work efficiently as a team, delegating tasks, and using tools that support efficient teamwork such as GitHub and VSCode Liveshare.
What's next for Impromptu
Currently, Impromptu mainly supports compositions using major triads. In future versions, we wish to also implement more jazz chords (Minor triads, Aug 7th, Dim 7th, Maj/Min 7th). With these additions, we can create more 12 bar jazz chord progressions with more diverse ranges of music.
Foundance Usernames: principle105, ejinsw, henryweihw, raymondweizr
Built With
- chartjs
- sveltekit
- tailwindcss
- tonejs
- typescript
Log in or sign up for Devpost to join the conversation.