A free MIDI editor where every song lives in its link, carries a fingerprint of its music, and remembers what it was remixed from.
By Hraness · Published
Drafted with AI from the source code and reviewed by Claude Opus 5.5 (claude-opus-5-5) editorial review.
Recording. A short film: a song that lives in its link, a remix that remembers the loop it came from, a fingerprint that survives a rename and changes when one note moves, and a coding agent that edits the song and hands back a link.
Music you can build on
Soundfish is a free MIDI editor where every song lives in its link. Open one, play it, change it, and send your version on. No account, no upload, no install.
Illustration. A four-bar lo-fi loop in the Soundfish piano roll, in an illustration, with the song's link in the address bar.
Every song has a fingerprint
Each song gets a fingerprint made from the music itself. Rename it and the fingerprint stays the same. Move one note and it changes. Two links with the same fingerprint hold the same music.
Illustration. The same loop checked three times, in an illustration. A rename keeps its fingerprint; moving one bass note changes it.
Remix it and keep the family tree
Change someone's loop and send it back as your own link. Move the keys up 2 semitones and Soundfish records which track you started from, so every remix remembers where it came from.
sound.fish#s1.bafkreiar7cuu2evrlzsj3lp…Copy link
After hours (remix)Lo-fi · D minor · 86 BPM · 4 bars
keys
Derivedkeys +2 semitones, from track trk_keys
Started frombafkreihks5s…tiysh4Remixbafkreiar7cu…f6dadi
Illustration. The keys track moved up 2 semitones, in an illustration, marked as derived from the original keys track.
Start from a groove, not a blank page
Pick one of 6 starter loops (lo-fi, house, electro, ambient, broken beat, chamber) and change it until it is yours. Every track plays through 128 General MIDI instruments and a set of drum kits.
sound.fish/midi
Starter loops
Lo-fiAfter hoursD minor · 86 BPM
HouseNeon tideA minor · 124 BPM
ElectroSatelliteE minor · 112 BPM
AmbientPaper lanternsC major · 72 BPM
Broken beatSide streetsF minor · 132 BPM
ChamberWood and wireG major · 96 BPM
Illustration. The 6 Soundfish starter loops as cards, in an illustration, each with its genre, key, and tempo.
Your coding agent can write music too
Ask a coding agent to make the drums swing. It edits the song with the soundfish command-line tool, checks the new fingerprint, and hands you back a link you can open and hear.
Coding agent
›Here's my loop: sound.fish/#s1.bafkreihks5ssc6tvzbvmxlm… Make the drums swing a little.
Run soundfishsoundfish set-swing "$LINK" 58
Run soundfishsoundfish verify "$NEW"
valid loop bafkreidisw2w2bjqqyzklm5evztttb6lwygc7tmdyerrll352bsjwghkpu
Done: swing is 58 now, everything else unchanged. Open it: sound.fish/#s1.bafkreidisw2w2bjqqyzklm5…
Illustration. A coding agent session, in an illustration: it sets the loop's swing to 58, verifies the result, and replies with a new link.
For sketching ideas and sharing them
For songwriters trading grooves, teachers sending an exercise, and developers whose programs read and write music. To record vocals or a guitar, use a recording app instead; Soundfish is for notes and drum hits.
Today 21:14
made a thing on the train 🎹 sound.fish/#s1.bafkreihks5ssc6tvzbvmxlm…
the bass!! moved the keys up a bit, try this
sound.fish/#s1.bafkreiar7cuu2evrlzsj3lp…
ok that's better. keeping it
MMaya
Message
9:41
Illustration. Two friends trading Soundfish links in a chat, in an illustration with made-up people: one loop and one remix of it.
The universe of music
The goal is a home for music the way code has one: every song findable by its fingerprint, every remix traceable to where it came from, and every piece something people and programs can build on.
After hoursbafkreihks5s…tiysh4
keys +2bafkreiar7cu…f6dadi
swing 58bafkreidisw2…wghkpu
one bass notebafkreihe2w5…qpmrey
Illustration. A family tree of songs, in an illustration: one starter loop branching into three remixes, each with its own fingerprint.
What it does not do yet
Soundfish does not record a microphone. The song lives only in its link, so keep the link; a four-bar loop's link runs about 1,397 characters. Finished recordings go on album pages: a free account publishes one album of up to 10 tracks.
sound.fish/@juniper-vale/night-drives
Night Drives
Juniper Vale · 3 tracks
1:12 · “that bass turn”
Streetlights
Overpass
Long Way Home
Illustration. A Soundfish album page, in an illustration with a made-up artist: a waveform player and a comment pinned to one moment.
Try it today
The MIDI editor at sound.fish is free and needs no account. Open a starter loop, change it, and send someone the link. For agents and scripts there is the soundfish command-line tool. Latest release: v0.7.0.
soundfish
$bunx @hraness/soundfish --version
soundfish 0.7.0
#the text an agent reads
$soundfish inspect "$LINK"
S1
D "After hours" 86 4 2200 2000 2800 750 24 2 minor "lo-fi" "Fmaj7|Dm7|Bbmaj7|Am7"
Soundfish is a free MIDI editor where every song lives in its link. Open one, play it, change it, and send your version on. No account, no upload, no install.
X post 2 of 8189 of 280
Each song gets a fingerprint made from the music itself. Rename it and the fingerprint stays the same. Move one note and it changes. Two links with the same fingerprint hold the same music.
X post 3 of 8182 of 280
Change someone's loop and send it back as your own link. Move the keys up 2 semitones and Soundfish records which track you started from, so every remix remembers where it came from.
X post 4 of 8194 of 280
Pick one of 6 starter loops (lo-fi, house, electro, ambient, broken beat, chamber) and change it until it is yours. Every track plays through 128 General MIDI instruments and a set of drum kits.
X post 5 of 8176 of 280
Ask a coding agent to make the drums swing. It edits the song with the soundfish command-line tool, checks the new fingerprint, and hands you back a link you can open and hear.
X post 6 of 8200 of 280
For songwriters trading grooves, teachers sending an exercise, and developers who want music their programs can read and write. Anyone with the link can listen, change it, and send their version back.
X post 7 of 8195 of 280
The goal is a home for music the way code has one: every song findable by its fingerprint, every remix traceable to where it came from, and every piece something people and programs can build on.
X post 8 of 8232 of 280
The MIDI editor at sound.fish is free and needs no account. Open a starter loop, change it, and send someone the link. For agents and scripts there is the soundfish command-line tool. Latest release: v0.7.0.
https://sound.fish/research/universe-of-music
Bluesky post 1 of 8158 of 300
Soundfish is a free MIDI editor where every song lives in its link. Open one, play it, change it, and send your version on. No account, no upload, no install.
Bluesky post 2 of 8189 of 300
Each song gets a fingerprint made from the music itself. Rename it and the fingerprint stays the same. Move one note and it changes. Two links with the same fingerprint hold the same music.
Bluesky post 3 of 8182 of 300
Change someone's loop and send it back as your own link. Move the keys up 2 semitones and Soundfish records which track you started from, so every remix remembers where it came from.
Bluesky post 4 of 8194 of 300
Pick one of 6 starter loops (lo-fi, house, electro, ambient, broken beat, chamber) and change it until it is yours. Every track plays through 128 General MIDI instruments and a set of drum kits.
Bluesky post 5 of 8176 of 300
Ask a coding agent to make the drums swing. It edits the song with the soundfish command-line tool, checks the new fingerprint, and hands you back a link you can open and hear.
Bluesky post 6 of 8200 of 300
For songwriters trading grooves, teachers sending an exercise, and developers who want music their programs can read and write. Anyone with the link can listen, change it, and send their version back.
Bluesky post 7 of 8195 of 300
The goal is a home for music the way code has one: every song findable by its fingerprint, every remix traceable to where it came from, and every piece something people and programs can build on.
Bluesky post 8 of 8254 of 300
The MIDI editor at sound.fish is free and needs no account. Open a starter loop, change it, and send someone the link. For agents and scripts there is the soundfish command-line tool. Latest release: v0.7.0.
https://sound.fish/research/universe-of-music
Threads post 1 of 8158 of 500
Soundfish is a free MIDI editor where every song lives in its link. Open one, play it, change it, and send your version on. No account, no upload, no install.
Threads post 2 of 8189 of 500
Each song gets a fingerprint made from the music itself. Rename it and the fingerprint stays the same. Move one note and it changes. Two links with the same fingerprint hold the same music.
Threads post 3 of 8182 of 500
Change someone's loop and send it back as your own link. Move the keys up 2 semitones and Soundfish records which track you started from, so every remix remembers where it came from.
Threads post 4 of 8194 of 500
Pick one of 6 starter loops (lo-fi, house, electro, ambient, broken beat, chamber) and change it until it is yours. Every track plays through 128 General MIDI instruments and a set of drum kits.
Threads post 5 of 8176 of 500
Ask a coding agent to make the drums swing. It edits the song with the soundfish command-line tool, checks the new fingerprint, and hands you back a link you can open and hear.
Threads post 6 of 8200 of 500
For songwriters trading grooves, teachers sending an exercise, and developers who want music their programs can read and write. Anyone with the link can listen, change it, and send their version back.
Threads post 7 of 8195 of 500
The goal is a home for music the way code has one: every song findable by its fingerprint, every remix traceable to where it came from, and every piece something people and programs can build on.
Threads post 8 of 8254 of 500
The MIDI editor at sound.fish is free and needs no account. Open a starter loop, change it, and send someone the link. For agents and scripts there is the soundfish command-line tool. Latest release: v0.7.0.
https://sound.fish/research/universe-of-music
LinkedIn post1562 of 3000
Soundfish is a free MIDI editor where every song lives in its link. Open one, play it, change it, and send your version on. No account, no upload, no install.
Each song gets a fingerprint made from the music itself. Rename it and the fingerprint stays the same. Move one note and it changes. Two links with the same fingerprint hold the same music.
Change someone's loop and send it back as your own link. Move the keys up 2 semitones and Soundfish records which track you started from, so every remix remembers where it came from.
Pick one of 6 starter loops (lo-fi, house, electro, ambient, broken beat, chamber) and change it until it is yours. Every track plays through 128 General MIDI instruments and a set of drum kits.
Ask a coding agent to make the drums swing. It edits the song with the soundfish command-line tool, checks the new fingerprint, and hands you back a link you can open and hear.
For songwriters trading grooves, teachers sending an exercise, and developers who want music their programs can read and write. Anyone with the link can listen, change it, and send their version back.
The goal is a home for music the way code has one: every song findable by its fingerprint, every remix traceable to where it came from, and every piece something people and programs can build on.
The MIDI editor at sound.fish is free and needs no account. Open a starter loop, change it, and send someone the link. For agents and scripts there is the soundfish command-line tool. Latest release: v0.7.0.
https://sound.fish/research/universe-of-music
Product Hunt tagline29 of 60
Songs that live in their link
Product Hunt description130 of 260
A free MIDI editor where every song lives in its link, carries a fingerprint of its music, and remembers what it was remixed from.
Facts for your own post
Songs that live in their link
Soundfish is a free MIDI editor where every song lives in its link. Open one, play it, change it, and send your version on. No account, no upload, no install.
Each song gets a fingerprint made from the music itself. Rename it and the fingerprint stays the same. Move one note and it changes. Two links with the same fingerprint hold the same music.
Change someone's loop and send it back as your own link. Move the keys up 2 semitones and Soundfish records which track you started from, so every remix remembers where it came from.
Pick one of 6 starter loops (lo-fi, house, electro, ambient, broken beat, chamber) and change it until it is yours. Every track plays through 128 General MIDI instruments and a set of drum kits.
Ask a coding agent to make the drums swing. It edits the song with the soundfish command-line tool, checks the new fingerprint, and hands you back a link you can open and hear.
For songwriters trading grooves, teachers sending an exercise, and developers who want music their programs can read and write. Anyone with the link can listen, change it, and send their version back.
The MIDI editor at sound.fish is free and needs no account. Open a starter loop, change it, and send someone the link. For agents and scripts there is the soundfish command-line tool. Latest release: v0.7.0.