Skip to content

Latest commit

 

History

History
42 lines (31 loc) · 2.12 KB

File metadata and controls

42 lines (31 loc) · 2.12 KB
Screenshot from 2025-11-16 20-44-50

Collalbum

For when someone asks you "What's your music taste?"

Collalbum generates aesthetic, semantically meaningful album-art collages from your Spotify listening history. Instead of sending someone a playlist link, you can share a single image that captures your music taste at a glance.

Overview

Collalbum is an BeaverHacks '25 project that:

  • Connects to your Spotify account
  • Fetches your listening history (e.g., top tracks/artists)
  • Collects the corresponding album art and metadata
  • Embeds albums into a semantic space so that “similar” albums live near each other
  • Lays them out on a canvas to produce a single collage image you can download and share

Architecture

This repo is split into two main parts:

  • collage_server/ – Python backend (“collage server”)

    • Exposes HTTP endpoints for:
      • Authenticating with Spotify (or accepting an access token)
      • Fetching and caching listening-history data
      • Generating collages from a set of album IDs
    • Handles:
      • Calls to the Spotify Web API
      • Embedding computation + dimensionality reduction
      • Image layout and rendering
    • Intended to be run with a modern async server (e.g., Uvicorn).
  • Frontend (src/, public/, dist/, index.html, vite.config.js)

    • Vite-based single-page app.
    • Talks to the collage server via REST endpoints.
    • Implements the “log in with Spotify, generate collage, download image” flow.
    • server.js can be used to serve the built frontend and proxy to the Python backend in production.

Extra

Check out our Devpost submitted to BeaverHacks 2025. We can't deploy the project as we realized (too late) that Collalbum is against the Spotify API terms of service. Feel free to fork to make your own collage!

Screenshot from 2025-11-16 20-24-36