🎵 Spotify Clone Link-https://acospotify.onrender.com
A full-stack Spotify-style music streaming application built using a modern JavaScript and TypeScript stack. This project focuses on authentication, media handling, and a scalable backend architecture.
🧰 Tech Stack
Frontend:
- TypeScript
- JavaScript
- CSS
- React
- Vite
Backend:
- Node.js
- Express.js
- MongoDB
- Mongoose
- JWT (JSON Web Tokens)
Media & Storage:
- ImageKit
📦 Dependencies
All required dependencies are already included in:
- package.json
- package-lock.json
You do not need to manually install individual libraries. Just install dependencies and run the project.
📂 Project Structure
spotify-clone/
│
├── client/ # Frontend (Vite + React + TypeScript)
│ ├── src/
│ ├── public/
│ └── vite.config.ts
│
├── src/ # Backend
│ ├── controllers/
│ ├── routes/
│ ├── models/
│ ├── services/
│ ├── middlewares/
│ └── db/
│
├── server.js
├── app.js
├── package.json
├── package-lock.json
├── .env.example
└── README.md
🔐 Environment Variables
Create a .env file in the root directory and add:
MONGO_URI=
JWT_SECRET=
IMAGEKIT_PRIVATE_KEY=
These variables are required for the project to work.
🚀 Getting Started
Clone the repository:
git clone https://github.com/your-username/spotify-clone.git cd spotify-clone
Install dependencies:
Backend: npm install
Frontend: cd client npm install
Start backend: npm run dev
Start frontend: cd client npm run dev
🔑 Authentication
- JWT-based authentication
- Tokens issued on login
- Protected routes require a valid token
📸 Media Handling
- Media uploads and delivery handled using ImageKit
- Secure access using private API keys
📌 Notes
- Project is for learning and demonstration purposes
- Not affiliated with Spotify
- All sensitive data is handled via environment variables
📜 License
MIT License
