← All projects

Sonic Fingerprint

Turns a Last.fm listening history into an interactive dashboard with 40+ lenses on top of a 24×7 heatmap. Runs 100% in-browser, no accounts, no servers.

Problem

Spotify Wrapped is a card. Last.fm gives you a list. Wanted something in between: a portrait of what your listening actually looks like, built from your real scrobble history rather than one label's data.

Role

Solo.

How it works

Fully static site (index.html, app.js, style.css) served through npx serve. No servers, no database, no analytics. Paste a Last.fm username and free API key and it pulls your full scrobble history through the Last.fm public API, augments artists with MusicBrainz metadata, and pulls in Apple iTunes for 30-second preview clips.

Everything caches locally, incremental fetch on subsequent loads. Optional Spotify OAuth for full-track previews on the "On This Day" view. 40+ interactive lenses on top of a 24×7 heatmap: persona classification, musical age, genre migration, comeback artists, on-this-day, artist origin map, and so on.

Poster export, animation of yearly change, embeddable widget, share links, print layout, and a keyboard palette (/, G, R, T, ?, Ctrl+K). Retro terminal theme buried in there too.

Stack
JavaScript Last.fm API MusicBrainz API iTunes Preview Spotify OAuth Playwright Data Visualization Client-Side No Backend
Result

Live at raghibhaque.github.io/SonicFingerprint/. README claims 200,000-scrobble libraries finish under a minute.