This project is a full-stack music platform developed as part of CENG 307 – 2025/2026 Term Project.
The application allows users to explore songs and albums, manage favorites, and enables artists/admins to manage music content through a role-based system.
- React
- TypeScript
- Vite
- Tailwind CSS
- Axios
- JWT Authentication
- Context API (Auth & Toast system)
- NestJS
- TypeORM
- PostgreSQL
- JWT Authentication
- Role-Based Authorization (Admin / Artist / Listener)
The system supports multiple user roles:
- Create, update, and delete artists
- Manage all albums and songs
- Create and manage own albums and songs
- Access studio panel
- Browse songs and albums
- Add and remove favorites
The frontend is built with React + TypeScript using Vite for fast development and build performance.
cd client
npm install
npm run devThe backend is implemented using NestJS following a modular architecture.
cd server
npm install
npm start run:dev