Stemsplit
Split any track into vocals, drums, bass and the rest, offline
About
Drop in a song, get four stems back. Runs locally on your laptop with an open model, so you can use it on unreleased material without uploading anything.
The hard part wasn't the model, it was making it feel like a real music app: waveforms that scroll smoothly, solo and mute per stem, and export straight into Ableton.
How it was made
Shared by the maker. Numbers are their own estimate.
- Build time
- 3 weeks
- AI spend
- $35
- Prompts
- ~160
- Written by AI
- 75%
Agents
Claude Code
60% of the workPython audio pipeline and packaging
Cursor
40% of the workElectron UI and the waveform renderer
Build recipe
The code is on GitHub. If you’d rather build it yourself than fork it, paste this into your own agent.
Written by Claude Code
From the project’s code and history · 320 words
Build a desktop app called Stemsplit: split any track into vocals, drums, bass and the rest, offline.
What it does
Drop in a song, get four stems back. Runs locally on your laptop with an open model, so you can use it on unreleased material without uploading anything.
Stack
Use Python, PyTorch, Electron, React. The original was built with Claude Code and Cursor in 3 weeks, for about $35 in AI usage.
How it fits together
- A desktop app with a native shell and a web UI
- Local processing so files never leave the machine
- Auto-updates through signed releases
Build it in this order
- Scaffold the app shell and package it once for every platform
- Build the main view and the core processing on real files
- Move heavy work off the UI thread so it stays smooth
- Add export and settings
- Set up signed releases and auto-updates
A prompt that worked: Make it feel like a music app
The waveform view stutters when scrolling a 6 minute track. Profile it, then move rendering to an OffscreenCanvas in a worker with pre-computed peaks at three zoom levels. Keep the UI exactly as it looks now. Measure before and after and tell me the frame times.
Watch out for
- Packaging and signing take longer than you think; do it in week one
- Profile on a slow laptop, not just your own
Done when
- It installs and updates on macOS and Windows
- The UI never freezes during heavy work
- Nothing is uploaded without the user knowing
Before writing code, ask me up to five questions about who this music & audio desktop app is for and what the first version must do. Then work in small steps: after each one, tell me how to try it and wait for my feedback.
Discussion
4 comments · 2 members tried it
Clean idea and it actually works. The build log is the most useful part for me, I'd love more detail on how you structured the prompts in week two.
Ran it locally in under five minutes. README is great. Would you take a PR that adds a Docker set-up?
- Amara Okafor2 days ago
Copied the main prompt and adapted it for a project at work. Saved me an afternoon.
More like this
An email agent that drafts replies and only pings you for the ones that matter