Skip to content

zenlyj/jukebox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

On popular social news aggregation platform Reddit, there are communities/subreddits dedicated to music discussion, such as r/hiphopheads, r/electronicmusic, r/indieheads. In these communities, users post about the latest music, videos and news relating to their favorite artists.

jukebox is a web application that extracts user-submitted song recommendations from the abundance of information that is available in these music communities. It supports music playback with Spotify, allowing users to listen to the recommended songs on jukebox, streamlining their music discovery and listening experience.

Tools and Technologies

  1. FastAPI
  2. React
  3. SQLite
  4. PRAW
  5. Spotify-API

Features

Spotify Integration

spotify_login

The application integrates with Spotify, allowing users to play recommended tracks through the browser. On application launch, users will be greeted with the Spotify login page, prompting for user authentication.

A premium Spotify account is required in order to use the Spotify API for music playback. The application automatically refreshes access tokens to ensure that users remain authenticated with Spotify over prolonged application usage.

Discover Mode

discover_selection

Once authenticated, users will be brought to the Discover page, where they have the following music genre options to choose from:

discover_browse

Upon selecting a genre, a list of recommended tracks will be displayed along with the following information:

  • Song title
  • Song artist(s)
  • Timestamp of associated Reddit post
  • Song duration

Listen Mode

listen

In the Listen page, a playlist is shown, consisting of tracks added from the Discover page. At the bottom of the page, the music player is used to control music playback.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published