Skip to content

Latest commit

 

History

28 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Table of Contents
  1. About The Project
  2. Getting Started

About The Project

Product Name Screen Shot

SentiMusic is a mood-based music recommendation system using OpenAI API to analyze user emotions, generate personalized music genres, and integrates the Spotify API to retrieve and display song recommendations based on the generated genres.

(back to top)

Built With

  • React
  • Express
  • Node
  • TailwindCSS

(back to top)

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

  1. Get an OPENAI API KEY or GROQ API KEY.
  2. Have a Spotify Account. Spotify Premium Account recommended to access playback feature.
  3. Create a Spotify App from Spotify Web API and get client id, client secret, and callback url.
  4. Create a .env in client and server directory

Installation

  1. Clone the repo

    git clone https://github.com/BrandonTDiep/SentiMusic.git
  2. Navigate to the client and server directory. Install NPM packages

    npm install
  3. Enter your API keys in client directory .env

    REACT_APP_API_URL = 'http://localhost:4000'
    REACT_APP_SPOTIFY_CLIENT_ID='ENTER YOUR SPOTIFY CLIENT ID'
  4. Enter your API keys in server directory .env

    PORT=4000
    MODEL='ENTER YOUR GPT MODEL'
    OPENAI_BASE_URL='ENTER THE OPENAI BASE URL'
    OPENAI_API_KEY='ENTER YOUR OPENAI KEY'
    OPENAI_PROMPT='ENTER YOUR OPENAI PROMPT THAT WILL GENERATE 5 GENRES FOR SPOTIFY API'
    SPOTIFY_CLIENT_ID='ENTER YOUR SPOTIFY CLIENT ID'
    SPOTIFY_CLIENT_SECRET="ENTER YOUR SPOTIFY CLIENT SECRET"
    SPOTIFY_REDIRECT_URL="ENTER YOUR SPOTIFY CALLBACK URL"
    CLIENT_REDIRECT='http://localhost:3000'
    
  5. Run the client

    cd client
    npm start
  6. Run the server

    cd backend
    npm run dev

(back to top)

About

Music-mood based recommender site

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages