Skip to content

A music taste visualizer utilizing FastAPI to pipeline dense quantitative audio data through clustering/projection algorithims

Notifications You must be signed in to change notification settings

evansun06/spotify-nebula

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spotify Nebula 🪐

Visualize and discover more of what you love listening to.

shields   shields   shields

🛠️ Features

  • Implemented relational database support for PostgreSQL/SQLite3 using SQLAlchemy to safely store user authentication tokens, spotify access tokens, and expiry timestamps.
  • Utilized a Python/FastAPI backend for external API calls (Spotify Web API, SoundNet API) and internal endpoints.
  • Pipelined dense quantitatve audio data through dimensionality reduction and clustering algorithms (t-SNE and DBSCAN) using numpy and scikit-learn.
  • Created an interactive dashboard using ReactJS to visualize a user's Spotify taste nebula.

🚀 Tech Stack

  • Languages: Python, Javascript, HTML, CSS
  • Database: SQLite3(inital development), PostgreSQL(migrated to later)
  • Frameworks/Libraries: FastAPI, ReactJS, SQLAlchemy, Pydantic, Scikit-learn
  • APIs: Spotify Web API, SoundNet Audio Feature API

Demo Screenshots

alt text

  • Final dashboard built with ThreeJS and React

Development Screenshots

alt text

⏰ WIP

  • Optimized clustering algorithim of choice
  • Deprecated Spotify audio features endpoint workaround

Collaborators

About

A music taste visualizer utilizing FastAPI to pipeline dense quantitative audio data through clustering/projection algorithims

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •