I built Album Art for mainly two reasons:
- To understand how to use Spotify's API and store data on a user's song history
- To prototype how Apple's Album Artwork screen saver could function for Spotify users
- Album Art - Play with the app! Note that this app works best on Chrome. Also, because this app is deployed on Heroku, it may take a minute to load. If it takes longer than this, you may need to refresh your browser.
- Demo - Watch a demo of the app.
-
Stores information on recently played Spotify songs, such as album cover images, song titles, and artist names. Recently played songs are accessed via Spotify's API and the Ruby wrapper, RSpotify. Since Spotify's Recently Played API only allows users to retrieve information on the past 50 songs, only the most recently played 50 songs can be stored at a time. Thus, users seeking to track their song history beyond 50 songs should regularly log into the program. Songs are automatically loaded each time a user logs in, however songs can be loaded without logging out by clicking 'refresh'.
-
Displays the album covers for recently played songs in a clean, customizable view. Users decide which covers to showcase, along with the number of rows and columns of the grid on which to display the songs.
-
Plays 30-second song previews. Users can preview songs by clicking on the album covers in the program.
-
Register a Spotify application and obtain a client ID and client secret. Follow this guide from Spotify for information on how to do this: https://developer.spotify.com/documentation/general/guides/app-settings.
-
Generate a secure session secret. You can use the Rake task in the program. Just open the program from your terminal and type in the following command:
rake generate:session_secret'
- Create a file titled '.env' in the program's root directory with the following (replace the 'X's with information from the previous steps):
export CLIENT_ID=XXXXXXXXXXXXXXXXXXXXXXX
export CLIENT_SECRET=XXXXXXXXXXXXXXXXXXX
export SESSION_SECRET=XXXXXXXXXXXXXXXXXX
- Run 'bundle install' to install the necessary Ruby gems and you're good to go!
Bug reports and pull requests are welcome on GitHub at https://github.com/alexander-mc/album_art.git. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.