← Back to work

Platforms & workflow automation

MusicStats

Turn Spotify listening history into a personal analytics view.

Status
Working product
My role
Full-stack implementation and testing
Timeframe
2025
Core technology
FastAPI · Next.js · Spotify API · OAuth 2.0
01OAuth token refresh
02Longer-term listening insights
03Broad pytest coverage

01 / Context

The problem

Spotify exposes rich activity data but does not present every listener with a durable, personalized analysis workspace.

02 / Product

The implemented solution

MusicStats synchronizes activity and turns it into ranked views and longer-term listening insights.

03 / System

Architecture, in plain language

FastAPI handles OAuth, persistence, synchronization, and analysis; Next.js presents typed views and charts.

InterfaceApplication servicesData & integrations

04 / Judgment

Important decisions

  1. Refresh tokens server-side.
  2. Persist history for longitudinal insights.
  3. Test provider and error behavior.

05 / Boundaries

Limitations and next work

Insight coverage is constrained by Spotify API permissions, availability, and retention rules.

06 / Implementation

Focused technology

FastAPI · Next.js · Spotify API · OAuth 2.0 · SQLAlchemy · pytest