Skip to content

This is a Microservices project is built using MongoDB, Express.js, React, Node.js (MERN Stack) as well as Redis & PostgreSQL. It has user authentication, music playback, playlist management, and admin functionalities.

Notifications You must be signed in to change notification settings

Saha-7/Music-Streaming-Platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

79 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Spotify-Microservice-System

Demo πŸ“½οΈ

Music.Streaming.Microservice.mp4

1. user-service

πŸ“Œ Project Setup Summary

  • npx tsc --init - Initialize TypeScript configuration.

  • Updated TypeScript configuration (tsconfig.json):

    • Set "module": "NodeNext" to Enables modern Node.js ESM (import/export)
    • Set "target": "ES2020" for Compiles TS into modern JavaScript
  • Install dependencies & their TypeScript type definitions:

    • npm i express mongoose dotenv bcrypt jsonwebtoken concurrently nodemon && npm i -D @types/express @types/mongoose @types/bcrypt @types/jsonwebtoken @types/dotenv type definitions are needed for safer, clearer, and more maintainable code by explicitly defining the expected types of data and interfaces, enhancing both development and runtime robustness.
    • npm i cors @types/cors
  • Setup package.json scripts for easier development and running:

    • "build": "tsc" πŸ‘‰ Compiles all TypeScript (.ts) files into JavaScript inside the dist folder.
    • "start": "node dist/index.js" πŸ‘‰ Runs the compiled JavaScript app from the dist folder in production.
    • "dev": "concurrently \"tsc -w\" \"nodemon dist/index.js\"" πŸ‘‰ Runs TypeScript compiler in watch mode AND restarts the server automatically whenever files change.
  • Set your .env file exactly similar to .env.example file & add the required details init.

2. admin-service

πŸ“Œ Project Setup Summary

  • Same tsconfig.json configuration.

  • Install dependencies & their TypeScript type definitions:

    • npm i express dotenv @types/express @types/dotenv cloudinary
    • npm i -D nodemon typescript concurrently
    • npm i @neondatabase/serverless - to use neon Postgressql
    • npm i multer axios datauri
    • npm i @types/multer
    • npm i cors @types/cors
  • Follow the same setup in your .env file similar to .env.example file in admin-service. [ PORT, DB_URL, CLOUDINARY-SECRETS ]

  • Redis setup:

    • npm i redis @types/redis
    • Follow the Redis config on index.ts file
    • Set your .env file exactly similar to .env.example file & add the required details init.

3. song-service

πŸ“Œ Project Setup Summary

  • Same tsconfig.json configuration.

  • Install dependencies & their TypeScript type definitions:

    • npm i express dotenv @types/express @types/dotenv
    • npm i @neondatabase/serverless - to use neon Postgressql
    • npm i -D nodemon typescript concurrently
    • npm i cors @types/cors
  • Redis setup:

    • npm i redis @types/redis
    • Follow the Redis config on index.ts file
    • Set your .env file exactly similar to .env.example file & add the required details init.

About

This is a Microservices project is built using MongoDB, Express.js, React, Node.js (MERN Stack) as well as Redis & PostgreSQL. It has user authentication, music playback, playlist management, and admin functionalities.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages