Skip to content

SamhithMR/video_streaming_application

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

86 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Real-Time Video Room

A full-stack peer-to-peer video streaming and live chat application built to explore and implement WebRTC, Redis Pub/Sub, Socket.io, and scalable real-time communication architecture.

πŸ” What I Learned

  • Real-time communication using WebRTC and Socket.io
  • Redis Pub/Sub for real-time messaging and chat persistence
  • Scalable architecture for multi-user video rooms
  • Backend development with Node.js and Express.js
  • Frontend design using React and Material UI
  • Deployment with Railway (backend) and Netlify (frontend)

πŸš€ Features

  • Join a video room using username and room ID
  • Peer-to-peer video streaming with multiple users
  • Mute/unmute audio and toggle video on/off
  • Screen sharing support
  • Live chat with message persistence using Redis
  • New users receive complete chat history on joining

πŸ› οΈ Tech Stack

  • Node.js + Express.js
  • WebRTC + Socket.io
  • Redis (Pub/Sub + persistent message store)
  • React + Material UI
  • Hosted on Railway & Netlify

πŸ“¦ Installation

# Backend
cd server
npm install
npm start

# Frontend
cd client
npm install
npm run dev

About

Real-time video chat app with screen sharing, audio/video controls, and Redis-powered messaging.

Topics

Resources

Stars

Watchers

Forks