Coder Social home page Coder Social logo

react-spotify-clone's Introduction

Spotify Clone

A web-based Spotify clone built using React.js and the Spotify Web API.

Table of Contents

Features

  • User Authentication: Sign in with your Spotify account.
  • Playlist Display: View and interact with your Spotify playlists.
  • Dynamic UI Colors: UI color scheme adapts to the current album cover.
  • Responsive Design: Mobile-friendly layout.
  • Search Functionality: Search for songs, playlists, albums, and artists directly within the app.

Languages Used

  • JavaScript: The primary language used for building the application.
  • HTML: Used for structuring the web pages.
  • CSS: Used for styling the application and making it responsive.

Libraries Used

  • React.js: A JavaScript library for building user interfaces.
  • React Router DOM: For handling routing in a single-page application.
  • Font Awesome: Icon library used throughout the application.
  • Vibrant.js: Library used to extract prominent colors from images.
  • React Color Extractor: Library used to extract dominant colors from album covers.
  • Spotify Web API JS: A JavaScript library for interacting with the Spotify Web API.

Getting Started

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Node.js: Make sure Node.js is installed on your machine.
  • Spotify Developer Account: Register your app on the Spotify Developer Dashboard to obtain the Client ID and Secret.

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/react-spotify-clone.git
    cd react-spotify-clone
  2. Install dependencies:

    npm install

Running the App Locally

To start the development server, run:

npm start 

Testing Mode

In the WelcomeNote.js component (located inside the components folder), there is a constant testing that controls whether the app uses the local redirect URL or the GitHub URL.

To run the app locally, set testing to true:

const testing = true; // For local testing

Important: Before pushing to the repository for production deployment, ensure that testing is set to false:

const testing = false; // For production deployment

For Production

To create a production build of the app and deploy, run:

npm run deploy

Folder Structure

public/
│   404.html
│   favicon.ico
│   index.html
│
src/
└── Assets/
└── Components/
    │   Banner.js
    │   Controls.js
    │   Header.js
    │   SideBar.js
    │   Songs.js
    │   WebPlayer.js
    │   WelcomeNote.js
└── Routes/
    │   Album.js
    │   Artist.js
    │   Home.js
    │   MusicPlayer.js
    │   Playlist.js
    │   Search.js
└── Styles/
    │   app.css
    │   banner.css
    │   controls.css
    │   header.css
    │   home.css
    │   musicPlayer.css
    │   search.css
    │   sideBar.css
    │   songs.css
    │   webplayerMain.css
    │   welcomeNote.css
│   App.js
│   index.js
│   playlistsid.js
│   .gitignore
│   README.md
│   package-lock.json
│   package.json

react-spotify-clone's People

Contributors

kalyankodes avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.