Skip to content

A Flask/HTML app to make collages of album art in a Spotify playlist

Notifications You must be signed in to change notification settings

malandles/spotify_collage_maker

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spotify Collage Maker

This Flask application lets you make a collage of album covers in a Spotify playlist. You'll need to sign up with Spotify for a Client Id and a Client Secret.

Here are a couple of ways you can run this on your machine:

Clone/download this repository to your machine and change your directory to it.

  1. Install Docker Desktop.

  2. Build the Docker container image:

$ docker build --tag spotify_collage_maker .
  1. Run the Docker container image:
$ docker run --publish 5000:5000 spotify_collage_maker

Don't want to install Docker and have Python 3.8 or higher on your machine already?

  1. Install the dependencies on your machine:
$ pip3 install -r requirements.txt
  1. Run the Flask App:
$ flask run

Point your browser to http://localhost:5000/ to start making your collage!

Here is what to expect:

screen.recording.1080p.mp4

Some things to consider:

  • If multiple tracks from the same album appear in a playlist, the album's cover will be used only once in the collage.

  • The preview uses 100px version of the album art but the download button generates the collage again using the higher resolution 300px version.

  • While large playlists (100+ tracks) are supported, the performance will vary based on your machine's configuration and the browser you are using. The Download button might not work with very large playlists (500+) on browsers other than Chrome.

  • Chrome and Firefox also allow you to right-click the collage and save it as an image. You will get the low-resolution 100px version in that case though.

About

A Flask/HTML app to make collages of album art in a Spotify playlist

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 63.7%
  • Python 33.3%
  • Dockerfile 3.0%