Giter Club home page Giter Club logo

mirotalk's Introduction

mirotalk

๐Ÿš€ A free WebRTC browser-based video call, chat and screen sharing ๐Ÿš€


Author License: CC-NC Donate Repo Link code style: prettier Gitter

Powered by WebRTC using google Stun and numb Turn. mirotalk provides video quality and latency not available with traditional technology.

Open the app in one of following supported browser

Foo


mirotalk

Features

  • Is 100% free and open-source
  • Unlimited users, without time limitation
  • Room Url Sharing (share to your friends, wait them to join)
  • WebCam Streaming (Front - Rear)
  • Audio Streaming
  • Screen Sharing to present documents, slides, and more
  • Chat Room && Emoji Picker
  • Full Screen Mode on click
  • Change Theme
  • Select Audio Input - Output && Video source
  • Right click on Video elements for more options
  • No download required, No account needed, entirely browser based
  • Direct peer-to-peer connection ensures lowest latency thanks to webrtc

Demo

  • Open https://mirotalk.herokuapp.com/
  • Allow to use the camera and microphone
  • Click the first button to copy the url and then share it
  • Wait someone to join for video conference

Room

Quick start

  • You will need to have Node.js installed, this project has been tested with Node version 12.X
  • Clone this repo
git clone [email protected]:miroslavpejic85/mirotalk.git
cd mirotalk

Setup Turn and Ngrok

  • Copy .env.template to .env
cp .env.template .env

Turn

  • Create an account on http://numb.viagenie.ca
  • Get your Account USERNAME and PASSWORD
  • Fill in your credentials in the .env file
  • Set TURN_ENABLED=true, if you want enable the Turn Server.

Ngrok

  • Get started for free https://ngrok.com/
  • Fill in your authtoken in the .env file
  • Set NGROK_ENABLED=true, if you want to expose the server using the https tunnel, starting it from your local pc.

Install dependencies

npm install

Start the server

npm start
  • Open http://localhost:3000 in browser
  • If you want to use a client on another computer/network, make sure you publish your server on an HTTPS connection. You can use a service like ngrok Or deploy it on heroku.

Credits

Many Thanks to vasanthv (webrtc) and Sajad (chat) from where I taked inspiration for this project. โค๏ธ

Contributing

  • Pull Requests are welcome! ๐Ÿ™‚
  • Please run prettier on all of your PRs before submitting, this can be done with prettier --write mirotalk/
  • For communication we use Gitter Chat which can be found here:

Gitter

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.