- User authentication: Users can sign up, login/logout, and login as a demo user
- Song: Users can upload songs with title and album data
- Playback Feature: Songs can be played with progress bar and continuous play
- Express
- Sequelize
- PostgresSQL
- JavaScript
- React
- Redux
- JavaScript
- CSS3
- HTML5
- Heroku
cd
into the repositorycd
into thebackend
directorynpm install
the dependencies- Make a
.env
file based on the.env.example
file given.
- Recommendation to generate a strong secret: create a random string using openssl (a library that should be installed in your Ubuntu/MacOS shell already). Run openssl rand -base64 10 to generate a random JWT secret.
- Create a user based on the user defined in the
.env
file by running this command:psql -c "CREATE USER <<user>> WITH PASSWORD '<<user_password>>' CREATEDB;"
- Create a database by running this command:
npx dotenv sequelize db:create
- Migrate to apply the migrations to the database by running this command:
npx dotenv sequelize db:migrate
- Seed data to the database by running this command:
npx dotenv sequelize db:seed:all
cd
into thefrontend
directorynpm install
the dependencies