Inspiration
| When I got into songwriting, I was recording my long jams with an old Nokia. I listened to my fav takes a gazillion times, but chances are the next day I already couldn't play any of them on my guitar, because I'm that bad at picking out chords and notes by ear. On top of that, finding a specific take in a long unnamed list was next to impossible, since only the special ones got names. And even when I did find the one I wanted, I still had to remember how to play it, so the ideas mostly stayed as recordings, lost in space for decades... Then I started coding in 2012, and I thought I could fix my issue with an Android app -- I'd type in the tabs and chords manually -- but I was a newbie dev so the UI was a pain to build, and writing things in after a jam is a chore even worse than simple naming unless it's automatic, so the idea was dropped dead. With wrinkles and time tho, by 2022 I had a lot more experience in dev but not in my musical hearing, so the problem stayed, however the technological ear was a better student than me and had already learned how to transcribe music to MIDI or how to continue or accompany your music. Nobody had yet built the tool I needed, thus it was my destiny to put to use my coder fingers instead of my musician ears to finally fix the problem and hopefully help other musicians who struggle like me. |
![]() |
What it does
Capture
You record a jam in the app or import the ones you already have, and that's the only manual part.
Music transcription
Your takes get transcribed into notes and chords, with the key and tempo detected, and the tabs come out of the same transcription, so you can play the idea back the way you played it, which was the whole point for me.
Library
Every take is tagged by instrument automatically, and you can find any of them by tag or by musical info like key or tempo.
Stems
A take can be split into stems, the voice and the guitar on their own, and each part transcribed separately, so the result is clean per instrument or voice.
Suggestions
When you want to continue or accompany what you have, Musairec generates ideas on top of your instrument or after a specific section of the piece.
Cloud sync
Your ideas stay backed up, and what you recorded on the phone is there in the web app.
How I built it
The app is built in Flutter, so the same code runs on Android, iOS and the web, while the backend is Firebase with a mix of Node.js and Python on Google Cloud. Transcription and tagging run right on your device, with models I had to adapt to live there, however stems and suggestions are way too hungry for a phone or a browser, so those go to servers.
Challenges I ran into
Porting the transcription model. There was no Flutter version of it, so I ported the model and made sure it hears the music the same way by running it against the original tests.
Audio and ML in the browser. Getting both to behave on the web and not just on a phone took a lot of adapting and reminded me of the cross-platform development pain.
GPUs and what they cost. With a handful of users the load is all over the place, so renting a fixed GPU makes no sense, and the services that scale down to zero when nobody is around come with their own fun that forced me to price the app accordingly.
Billing on three platforms. Fragmentation hell is real, and making one service that takes Apple, Google and web payments is no joke, so, not to endorse, but RevenueCat really helped there.
Business decisions. Every single one took longer to decide than to build.
Knowing when to stop. I kept adding features I wanted for myself, and the backlog is still huge, so at some point I had to stop and ship something.
What I learned
Building a whole product of my own from the ground up was a totally new experience, so most of what I learned is on the business and product side, like what to charge for and what to keep free, what one user actually costs me, how a trial should work and how to set up tiers that make sense. On the web side I learned that a phone gives you the file system and a browser gives you its own ephemeral world, which limits what an audio-file-based app can do, however the ML models are mostly the same there and maybe even faster, because in the best case they get the laptop's hardware. Also, this project was a perfect testbed for all the new shiny agent dev workflows to speed things up.
What's next for Musairec
More intelligence in the analysis, and more ways to work with what you've recorded:
- Automatic segmentation of a recording, and finding the interesting or repetitive parts in your ideas.
- A conversational layer, so you connect Musairec as an MCP server to your chat and talk to your library.
- Integration with web-based DAWs, and with desktop ones that get MCP support, so your ideas can go straight into where you write music.

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