Skip to content

Video chat app using Vue, Vuex, WebRTC, SocketIO, Node, Redis & Docker with horizontal scaling. Multiparty and 1 to 1 video functionality, several public rooms and user status

Notifications You must be signed in to change notification settings

adrigardi90/video-chat

Repository files navigation

video-chat

Chat application with 1 to 1 and many to many video functionality using VueJS, Vuex, WebRTC, SocketIO,NodeJS and Redis

Quick start

First of all, you need to install and run the redis in your PC. Here there is an article for Mac OS X. Once Redis is up and running:

# Clone the repo
git clone https://github.com/adrigardi90/video-chat

# Change into the repo directory
cd video-chat

# install
npm install 

# Start the FE in dev mode
npm run serve

# Start the server
npm run run:server

Then visit http://localhost:8080 in your browser

Horizontal scaling

To test out the horizontal scaling we'll create 3 different instances. Each one running a unique nodeJS process serving the FE and exposing the API

scaling

# Build the images
docker-compose -f docker-compose.yml build

# Create and run the three instances
docker-compose -f docker-compose.yml up

The webapp will be exposed on http://localhost:3000, http://localhost:3001 and http://localhost:3002, each one with a different socket connection

About

Video chat app using Vue, Vuex, WebRTC, SocketIO, Node, Redis & Docker with horizontal scaling. Multiparty and 1 to 1 video functionality, several public rooms and user status

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published