Product build2026
SoundFind
Record a few seconds. Get the song.
A local-first, Shazam-style web app. Record 5 to 8 seconds of any song and identify it from your own indexed music catalogue using audio fingerprinting.

The problem
Identifying a song from a short, noisy recording means matching a few seconds of audio against a whole catalogue, fast, without sending everything to a third-party service.
What was built
SoundFind fingerprints audio with spectrogram peak constellations and matches them against a catalogue you index yourself. The web app and the matcher deploy independently.
From a recording to a match
Record
The browser records 5 to 8 seconds of the song.
Send
A Next.js route forwards the clip and injects the server-side API key.
Fingerprint
The FastAPI matcher builds a spectrogram and picks peak constellations.
Match
Peak-pair hashes are looked up in the indexed catalogue.
Answer
The best match returns to the app and is saved to the user's history.
What it is made of
Web app
- Next.js 15 App Router
- TypeScript
- Vanilla CSS
Data
- Supabase Auth
- Postgres
- Storage
Matcher
- FastAPI
- librosa
- numpy
- scipy
Delivery
- Vercel
- Hugging Face Spaces (Docker)
A working recognition pipeline end to end, with admin ingest for new tracks and per-user history.