Skip to content

Rishika-108/Spotify-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Spotify App 🎶

The Spotify App is a full-stack web application built using the MERN stack (MongoDB, Express.js, React, Node.js) that mimics the functionality of the Spotify music streaming platform. Users can explore music, listen to songs, and search for their favorite tracks, albums, and artists, offering an immersive music experience.

🌟 Features

  • User Authentication:
    Users can sign up, log in, and manage their account, including authentication via JWT (JSON Web Tokens).

  • Song Playback:
    Play, pause, and skip songs, mimicking a real music streaming platform with a built-in audio player.

  • Playlist Management:
    Create, manage, and add songs to personal playlists.

  • Album and Artist Pages:
    Display detailed pages for albums and artists with their respective songs and albums.

  • Responsive Design:
    Fully responsive and accessible on desktop, tablet, and mobile devices.

🛠️ Tech Stack

  • Frontend: React.js for building a dynamic user interface, handling state management, and rendering components efficiently.
  • Backend: Node.js with Express.js for building the RESTful API that interacts with the frontend and MongoDB database.
  • Database: MongoDB to store user data, songs, albums, playlists, and more.
  • Authentication: JWT (JSON Web Tokens) for secure user authentication.
  • APIs: Custom APIs for music data, integrated with the backend to fetch music-related data.

🚀 Getting Started

Prerequisites

Make sure you have the following installed:

Installation

  1. Clone the repository:
    git clone https://github.com/Rishika-108/Spotify-App.git
  2. Navigate to the project directory:
    cd Spotify-App
  3. Install frontend dependencies:
    cd frontend
    npm install
  4. Install backend dependencies:
    cd ../backend
    npm install

Running the App

  1. Start the backend server:

    cd backend
    npm start
  2. Start the frontend server:

    cd frontend
    npm start
  3. Open the app in your browser at http://localhost:3000.

Spotify API Configuration

You need to configure your Spotify Developer API key:

  1. Create an account on Spotify Developer Dashboard.
  2. Create a new app to get the API key.
  3. Add your credentials to your environment variables.

📂 Project Structure

Spotify-App/  
├── backend/  
│   ├── models/        # MongoDB models for storing data  
│   ├── routes/        # API routes for handling requests  
│   └── server.js      # Backend entry point  
├── frontend/  
│   ├── components/    # Reusable React components  
│   ├── pages/         # Pages for each section (Home, Playlist, etc.)  
│   ├── context/       # State management with Context API  
│   └── App.js         # Main React component  
├── .env               # Environment variables for API keys and configurations  
├── .gitignore         # Ignored files and folders  
├── package.json       # Project dependencies  
└── README.md          # Documentation  

🤝 Contributing

Contributions are welcome! To contribute:

  1. Fork the repository.
  2. Create a new branch: git checkout -b feature-name.
  3. Commit your changes: git commit -m 'Add feature-name'.
  4. Push to the branch: git push origin feature-name.
  5. Submit a pull request.

📜 License

This project is licensed under the MIT License.

About

A full-stack MERN (MongoDB, Express.js, React.js, Node.js) web application that recreates the core features of Spotify. It allows users to stream music, manage playlists, and explore songs, albums, and artists with real-time interactivity. Featuring secure JWT authentication, responsive design, and a built-in audio player.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors