Skip to content

imSyntn/Tunes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tunes

Tunes is a music streaming web app. It offers users the ability to explore, play, and manage songs seamlessly with features such as lyrics, volume control, and looping. The app includes a backend powered by Node.js and Express, with MongoDB for database management and user authentication, and Redis for caching.

Features

  • Audio Selection: Browse and play a wide range of songs fetched using the Spotify API.
  • Lyrics: View song lyrics in real-time for a more immersive listening experience.
  • Volume Management: Fine-tune the volume for optimal listening.
  • Looping and Song Management: Control playback with loop features and manage your songs easily.
  • Liked Playlists, Albums, and Songs: Save your favorite playlists, albums, and songs to easily access them later.
  • Previous/Next Song Controls: Seamlessly switch between songs using intuitive previous and next controls.
  • User Authentication: Secure user registration and login using MongoDB for storage and JWT for token-based authentication.
  • Caching with Redis: Improve performance and reduce load times by caching data for faster access.
  • Backend Services: A backend server with API endpoints for data management, user operations, and music content.

Tech Stack

  • Client: React, TypeScript, Sass, framer-motion, react-icons, react-router-dom, framer motion

  • Server: Node.js, Express, MongoDB (via Mongoose), JWT (for authentication), Redis (for caching)

Prerequisites

  • Docker

Run Locally

  • Clone the project
  git clone https://github.com/imSyntn/Tunes.git
  • Go to the project directory
  cd Tunes
  • Start docker in background

  • Start the server

  docker compose up

Contact

Happy coding!🚀