Skip to content

Latest commit

Β 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎡 Spotify Clone - Full Stack MERN Application

A fully functional, responsive music streaming platform built using the MERN stack (MongoDB, Express.js, React, Node.js). This project includes a custom music player, secure authentication system, and cloud-based media storage.

πŸš€ Live Demo 🌐 Frontend: https://spotify-clone-rho-nine-44.vercel.app βš™οΈ** Backend API**: https://spotify-clone-b3pm.onrender.com ✨ Features 🎧 Music Player Play, Pause, Next, Previous Seek functionality with real-time progress bar Volume control πŸ” Authentication Secure Signup & Login Password hashing using bcryptjs Token-based authentication using JWT ☁️ Cloud Storage Audio files & images stored in Cloudinary Fast and optimized media delivery 🎨 UI/UX Responsive dark-themed UI Inspired by Spotify design Built using React + Tailwind CSS πŸ“Š** Database** MongoDB Atlas for storing: Users Songs Albums πŸ”’ Protected Routes Only authenticated users can: Access player View library πŸ› οΈ Tech Stack Frontend React.js (Vite) React Router DOM Axios Context API Tailwind CSS / Styled Components Backend Node.js Express.js MongoDB Atlas Cloudinary Multer JSON Web Tokens (JWT) πŸ“‚ Project Structure spotify-clone/ β”œβ”€β”€ backend/ β”‚ β”œβ”€β”€ config/ β”‚ β”œβ”€β”€ controllers/ β”‚ β”œβ”€β”€ models/ β”‚ β”œβ”€β”€ routes/ β”‚ └── server.js β”‚ └── frontend/ β”œβ”€β”€ src/ β”‚ β”œβ”€β”€ components/ β”‚ β”œβ”€β”€ context/ β”‚ β”œβ”€β”€ pages/ β”‚ └── App.jsx

βš™οΈ Installation & Setup 1️⃣ Clone Repository git clone https://github.com/YOUR_USERNAME/spotify-clone.git cd spotify-clone 2️⃣ Backend Setup cd backend npm install

Create a .env file:

MONGO_URI=your_mongodb_uri JWT_SECRET=your_secret_key

CLOUDINARY_CLOUD_NAME=your_cloud_name CLOUDINARY_API_KEY=your_api_key CLOUDINARY_API_SECRET=your_api_secret

Run backend:

npm run dev 3️⃣ Frontend Setup cd frontend npm install npm run dev πŸ“ Content Note The app is fully functional. To add songs: Use admin APIs OR Directly upload .mp3 files + images via backend/database

πŸ“Œ Future Improvements Playlist creation Like/Favorite songs Search optimization Admin dashboard Real-time streaming 🀝 Contributing

Pull requests are welcome. For major changes, please open an issue first.

πŸ“œ License

This project is licensed under the MIT License.

⭐ Support

If you like this project, give it a ⭐ on GitHub!

Releases

Packages

Contributors

Languages