Skip to content

RileyHMckinney/Back2Bassics

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Back2Bassics

A full-stack web application that connects to the Spotify API to display album information, track details, and user interactions such as likes, ratings, and reviews.

Built using:

  • Python (Flask) for the backend
  • HTML/CSS/JavaScript for the frontend
  • SQLite for the database
  • Spotify Web API for album and track data

How to Run the Project Locally

You will need two terminal windows (or tabs) open.

1. Start the Flask Backend

In the first terminal:

python dev/backend/partC/app.py

This will start the backend server at: http://127.0.0.1:5000

2. Start the Frontend Server

In the second terminal:

cd dev/frontend
python -m http.server

This will start a basic HTTP server for the frontend at:

http://127.0.0.1:8000

3. Open the App in Your Browser

Visit:

http://127.0.0.1:8000/login.html

From there, you can sign up, log in, browse albums, view tracks, leave reviews, and more!

Environment Setup

Before running the app, ensure you have a .env file at the root of the project containing your Spotify API credentials:

SPOTIFY_CLIENT_ID=your_spotify_client_id_here
SPOTIFY_CLIENT_SECRET=your_spotify_client_secret_here

(Do not include your Spotify access token — it will be auto-generated at runtime.)

You must have the following Python packages installed:

pip install Flask flask-cors python-dotenv requests

Features

  • User authentication (sign up / login)
  • View albums with real-time Spotify album covers
  • View track details
  • Like albums and tracks
  • Rate albums and tracks
  • Leave reviews on albums and tracks
  • Fully automated Spotify API token refresh

Notes

  • The project uses dynamic access tokens from Spotify and does not require manual updates of tokens.
  • Album and track images are fetched from Spotify and cached to minimize API calls.
  • .env should never be committed to version control — make sure it is listed in .gitignore.

About

Social Media/Database for interacting with Music

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 43.8%
  • Python 41.9%
  • HTML 11.7%
  • CSS 2.6%