Spotify Clone is a full-stack web application that replicates the core functionality of Spotify's music streaming service. It features a modern, responsive user interface with authentication, a dynamic song library, and an interactive music player with features like play/pause, skip, volume control, and search functionality..
- Node.js - JavaScript runtime environment
- Express.js - Web application framework
- CORS - Cross-origin resource sharing
- File System (fs) - Local file management
- Vanilla JavaScript - No frameworks, pure JS
- HTML5 - Semantic markup
- CSS3 - Modern styling with animations
- Font Awesome - Icon library
- Local Storage - Client-side data persistence
- In-Memory Storage - Server-side user management
- File System - Audio and image storage
- npm - Package management
- nodemon - Development server with auto-reload
- Node.js installed on your computer
- npm (Node Package Manager)
-
Navigate to the server directory:
cd server -
Install the required dependencies:
npm install
-
Start the server:
npm startThis will start the server on port 3000.
- User authentication (registration and login)
- Search functionality that queries the server
- Play, pause, skip, and volume control
- Responsive design
- Keyboard shortcuts
- POST /api/auth/register - User registration
- POST /api/auth/login - User login
- GET /api/auth/users - Get all users (for testing)
- GET /api/songs - Get all songs
- GET /api/songs/:id - Get specific song by ID
- GET /api/search?q=query - Search songs by title/artist