All Projects
Screenshot coming soon
// Project

Vibe Splitter

Feb 2026 – Present·2026

Personal side project: built and actively maintained outside of university. A self-initiated full-stack Python web app for automated Spotify library management.

Live Demo ↗GitHub ↗
Hourly
Sync
Auto
Routing
Docker
Deploy
My Role
Sole Developer (Personal Project)

Web app that automatically clusters a Spotify library into vibe-based playlists using Last.fm genre tags, MiniLM semantic embeddings, and optional Spotify audio features. Runs hourly, routes new tracks via cosine similarity, and features a real-time SSE-powered dashboard.

Key Highlights

  • 01.Semantic clustering pipeline using fastembed (ONNX MiniLM) to encode Last.fm tags and track metadata into vector embeddings, with optional Spotify audio feature fusion.
  • 02.Confidence-based routing: tracks above the auto-assign threshold go directly to playlists; uncertain tracks land in a review inbox for manual approval.
  • 03.Drift detection monitors cluster cohesion over time and flags automatically when a full recluster is needed.
  • 04.Server-Sent Events (SSE) bus powers a real-time dashboard: sync status, track counts, inbox queue, and override controls update live without polling.
  • 05.Circuit breaker pattern in the Spotify API client handles rate limits and transient failures gracefully.
  • 06.Containerised with Docker and deployed on Render; SQLite state layer with atomic writes ensures safe concurrent access.

Tech Stack

PythonFlaskSpotify APIfastembedSQLiteDockerSSE