An interactive visual gallery for your Spotify liked songs. Albums float in a 3D-like space and can be clustered and explored by track name, release year, or date added.
Spotify Space transforms your liked songs library into a browsable visual experience — album art arranged spatially, with animated layout modes that group your music in different ways. Click any album to play it via the embedded Spotify player.
Here's the demo: (https://spotify-space.vercel.app/)
| Layer | Technology |
|---|---|
| Framework | React 19 |
| Language | TypeScript |
| Build tool | Vite |
| Animation | GSAP 3 |
| Auth | Spotify PKCE OAuth |
| Data | Spotify Web API |
| Persistence | localStorage (tokens + gallery cache) |
No backend. No database. Runs entirely in the browser.
-
Create a Spotify app at developer.spotify.com and add
http://127.0.0.1:5173/callbackas a redirect URI. -
Create a
.envfile in the project root:VITE_SPOTIFY_CLIENT_ID=your_client_id_here VITE_SPOTIFY_REDIRECT_URI=http://127.0.0.1:5173/callback -
Install dependencies and start the dev server:
npm install npm run dev
-
Open
http://127.0.0.1:5173— must use this exact URL (notlocalhost) to match the Spotify OAuth callback.
npm run dev # Dev server at http://127.0.0.1:5173
npm run build # TypeScript compile + Vite bundle
npm run lint # ESLint
npm run preview # Preview production build| Mode | Description |
|---|---|
| Default | Random scatter with z-depth |
| Track Name | Clustered alphabetically |
| Release Year | Clustered by album release year |
| Date Added | Clustered by when you liked the song |