Burns Shuffle
A custom-built music intelligence platform that ingests a full Spotify listening history — 200,000+ play events across 16 years — and turns it into AI-powered playlist generation, deep taste analytics, and natural-language music discovery. Spotify-branded web experience, integrated with the user's real account, shipped in one weekend.
"Wrapped" once a year isn't enough.
Spotify gives users a five-page "Wrapped" summary once a year. The client wanted year-round, deeply personalized music intelligence: real analytics over their full listening history, AI-curated playlist generation tuned to specific moments ("dinner party with the in-laws," "youth baseball practice," "find me an artist that sounds like Radiohead"), and a discovery engine that surfaces new music adjacent to their taste — not the same 50 favorites the major streaming algorithms keep recommending.
Off-the-shelf solutions didn't exist. The user's full streaming history was sitting in a Spotify data export, unused. Taste data was scattered across multiple services. And the streaming services themselves don't expose this depth of analytics to end users.
A private web application that solves the entire workflow end-to-end.
Burns Shuffle runs on the client's own domain via Cloudflare Tunnel, integrated with their actual Spotify account. ~2,500 lines of Python across 16 modules, 11 templates, ~1,000 lines of CSS/JS — built in one weekend plus three evenings.
- Python 3 + Flask — stateless request handling with disk-cached enrichment data.
- Google Gemini 2.5 Flash — three distinct AI workloads: natural-language parsing, recommendation reranking against the user's taste profile, and grounded Q&A over structured listening data.
- Hybrid Last.fm + LLM recommendation pipeline — deliberately bypassing Spotify's deprecated /recommendations endpoint.
- OAuth 2.0 Authorization Code flow against the Spotify Web API, with refresh-token-backed long-running background jobs.
- No build step — Plotly.js for choropleth/sankey/streamgraph charts, D3.js for force-directed networks and calendar heatmaps, Chart.js for analytics. All CDN-loaded.
- Cloudflare Tunnel exposing the user's local instance via custom subdomain with valid HTTPS. Zero hosting infrastructure, zero monthly cost.
Year-round personalized music intelligence.
Type a vibe. 30 seconds later it's in your Spotify.
"Clean upbeat music for a youth baseball team" or "moody late-night focus mix similar to Bon Iver." Gemini parses intent into a structured playlist plan, with automatic explicit-content filtering for family-friendly contexts. Auto-syncs to every Sonos in the house.
From thought to Sonos in under 30 seconds.Your musical DNA, in a radar chart.
Every artist in the library enriched with Last.fm's 20-year community tag dataset plus Spotify's micro-genre taxonomy, weighted by play count. The result: a radar chart showing actual scenes, eras, and moods — not generic genre labels.
Knows you better than your "Daily Mix" does.Animated maps, stream graphs, force-directed networks.
World map of where the music came from year-by-year, genre evolution stream graph, mood arc, artist similarity network, GitHub-style calendar heatmap, Sankey flows linking era→genre→mood, year-vs-year diff, sonic diversity index over time.
"Wrapped," but every day of the year."Have I gotten more obsessive over time?"
Chat-style interface for asking questions grounded in actual numbers from the listening data. Gemini is explicitly constrained to never invent statistics — it answers from the structured data or it doesn't answer.
A music therapist that's read your entire library.The secret pleasures other apps never reveal.
Surfaces tracks the user has played heavily that don't fit their usual taste profile — the guilty-pleasure outliers that streaming algorithms hide from you in service of homogenized recommendations.
Find out what you actually like, vs. what you tell people you like.What you're "falling for lately."
Generates playlists adjacent to the user's 30 most-recently-liked songs, filtering out anything already in heavy rotation. Seeds new music from the bleeding edge of taste evolution — not the well-worn favorites.
Stop hearing the same five "discoveries" every month.Pragmatic stack choices, AI used where it actually helps.
- Off-the-shelf API limits as design constraints, not blockers. Spotify deprecated their /recommendations and /audio-features endpoints for new developer apps in late 2024. We built a hybrid Last.fm + LLM pipeline that's better than what Spotify's deprecated endpoints offered — because the LLM reasons over the user's real taste fingerprint rather than running generic collaborative filtering.
- Visual experience, not a dashboard. Spotify-branded with the official font stack, brand-green palette, equalizer animations, live progress indicators with phase-by-phase narration during long jobs, dynamic theming hooks. Music apps live or die on how they feel.
- No database where JSON works. No framework where vanilla works. No cloud where Cloudflare Tunnel works. Every architectural decision optimized for shipping and working — not chasing best-practices checklists.
- AI used thoughtfully. Gemini reasons over structured taste data, parses ambiguous natural language, and reranks algorithmically-generated candidates — the things LLMs are good at. Not used to invent track titles or fabricate stats — outputs are explicitly grounded in real data.
- Background processing with status polling. Multi-threaded job system with status-polling UI for anything taking more than a few seconds (taste-profile builds, playlist generation, discovery pipelines).
- Cloudflare Tunnel deployment. Custom subdomain, automatic TLS, valid HTTPS — without paying for a server, configuring a load balancer, or running a CDN. The user's local instance is the deployment.
A weekend's work that runs reliably at zero cost.
A comparable build from a digital agency would invoice $50K–$95K. Internal team build: ~$28K loaded cost. We shipped this in a weekend at $0/month operating cost — running reliably for one user with all the features described above.
Off-the-shelf limits are design constraints, not blockers.
For a prospective client considering a custom internal tool, a data product, or an API-driven web application, this project demonstrates several things:
- We treat API limits as design constraints. When Spotify deprecated their key endpoints, most builders would've abandoned recommendation features. We built a hybrid pipeline that's actually better.
- We ship visual experiences, not dashboards. Music apps live or die on feel. So do internal tools your team has to use every day.
- We make pragmatic stack choices. No database where JSON works. No framework where vanilla ships faster. No cloud where Cloudflare Tunnel solves it free.
- We integrate AI where it's genuinely useful. Reasoning over structured data, parsing natural language, reranking candidates. Not "let's bolt a chatbot on."
- The cost story matters. Agency quote: $50K–$95K. Internal team: ~$28K. What we shipped: a weekend at $0/mo. The work is the differentiator, not the line items.
Screenshots.
The project in the wild — UI from the live product.
The full stack.
- Languages: Python 3, JavaScript (ES6+), HTML5, CSS3
- Backend: Flask, Spotipy, python-dotenv, requests, threading
- AI / LLM: Google Gemini 2.5 Flash (via google-generativeai SDK)
- APIs: Spotify Web API, Last.fm API, Google Generative AI API
- Frontend libraries: Plotly.js, D3.js, Chart.js — all CDN-loaded, no build step
- Auth: OAuth 2.0 Authorization Code flow with refresh tokens
- Deployment: Cloudflare Tunnel with custom subdomain + automatic TLS
- Tooling: Python venv, JSON file storage, in-memory caching with disk fallback, persistent rate-limit-respecting API caches
If any of these sound familiar, we can probably ship it this month.
If your team has any of the following:
- A pile of data sitting in an internal system that nobody analyzes
- A repetitive workflow that involves humans reading natural language and turning it into structured action
- A customer-facing experience that's been "good enough" for years but feels stale
- An integration with a third-party API that you've been told would take "a quarter" to build properly
…we can probably ship a working version this month. Not a prototype. A working version, deployed on your domain, that does the thing.
We build internal tools & data products.
Custom web applications, API-integrated dashboards, and AI-augmented internal tools. Pragmatic stacks, shipped fast.
Got a pile of data nobody's looking at?
Tell us what you'd build if "we can't" wasn't the answer.
Get in Touch