Skip to content

cyan92128505/Musixer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Musixer

Musixer is a web application that allows users to explore top artists and albums from different countries. Users can create an account with password protection and log in to browse the top 10 artists in their default country, which is set to Taiwan. By clicking on an artist, users can view the top 10 albums by that artist and add them to their favorites.

Technologies Used

  • TypeScript
  • Express (backend API)
  • PostgreSQL (database)
  • Redis (caching)
  • React (frontend)
  • Chakra UI (UI framework)
  • MusixMatch API (integration for artist and album data)

Prerequisites

  • Node.js
  • Docker | Podman (for database and caching services)
  • MusixMatch API credentials

Getting Started

  1. Clone the repository:
git clone https://github.com/cyan92128505/musixer.git
cd musixer
  1. Install dependencies for the backend:
cd api
npm install
  1. Configure environment variables:

Create a .env file in the api directory. Add the necessary environment variables, including database connection details, API keys, and JWT secret.

  1. Generate JWT key:(optional)
cd ./api
ts-node ./src/tool/generateKey.ts
base64 
  1. Start the backend server:
npm run dev
  1. Install dependencies for the frontend:
cd ../app
npm install
  1. Configure environment variables: Create a .env file in the app directory. Add the necessary environment variables, such as the API endpoint.

  2. Start the frontend development server:

npm start
  1. Access the application: Open your browser and visit http://localhost:3000 to access the Musixer application.

About

Song Discovery Web Application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published