Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Leonard Kim bc403adb46 feat(api): allow for explicit screenshare state toggling 5 years ago
.github misc: fixup MD format 6 years ago
android feat: report analytics for the network connection 5 years ago
connection_optimization Updates config feature and whitelists options that can be overridden. (#2282) 7 years ago
css feat: add send message button 5 years ago
debian Maps available locales for countries to the doubled languages. 5 years ago
doc feat(API): add dominant speaker changed event 5 years ago
flow-typed/npm deps: react-redux@7.1.0 5 years ago
fonts feat: add send message button 5 years ago
images ui: bigger padding to default avatar 5 years ago
ios feat: report analytics for the network connection 5 years ago
lang Removes i18n strings for p2p and turn. 5 years ago
modules feat(api): allow for explicit screenshare state toggling 5 years ago
react feat: mobile chat emojis 5 years ago
resources Updates correct loading and fix checking is dominant speaker. 5 years ago
service ref(follow-me): hook into redux (#3991) 6 years ago
sounds Adds live streaming sound notification. (#4532) 5 years ago
static fix(dropbox-auth): In Electron. 6 years ago
.buckconfig Merge jitsi-meet-react's mobile support 8 years ago
.editorconfig The Makefile file format requires tab characters 8 years ago
.eslintignore flow-typed 8 years ago
.eslintrc.js use central jitsi eslint config (#2108) 7 years ago
.flowconfig deps: react-native@0.60 5 years ago
.gitattributes react-native 0.40.0 8 years ago
.gitignore misc: add Android debug builds to .gitignore 6 years ago
.travis.yml travis: wait 10 seconds after script to catch the error logged 5 years ago
.watchmanconfig Merge jitsi-meet-react's mobile support 8 years ago
CONTRIBUTING.md misc: s/Atlassian/8x8/ 6 years ago
ConferenceEvents.js feat(eslint): Enable for non react files 7 years ago
LICENSE Moves original contribution note 9 years ago
Makefile Add video background blur 5 years ago
README.md doc: add links to the sample SDK applications repo 6 years ago
analytics-ga.js fix(analytics-ga): Ignore some events 6 years ago
app.js misc: drop dependency on prop-types and polyfill 6 years ago
base.html add support for possible ssi of <base> attribute 9 years ago
conference.js feat(api): allow for explicit screenshare state toggling 5 years ago
config.js feat(deep-linking): allow disabling through override 5 years ago
connection.js fix(connection): reload immediately on possible split-brain (#3162) 6 years ago
favicon.ico Added favicon.ico for 1) better jitsi brand recognition and 2) getting rid of warnings in web server log files 11 years ago
index.android.js [RN] Drop no longer needed polyfills 6 years ago
index.html fix(index): set reload link as attribute, not raw html 5 years ago
index.ios.js feat(web/RN): update React to v16 and React Native to 0.49 7 years ago
interface_config.js Add video background blur 5 years ago
logging_config.js Remove duplication 6 years ago
metro.config.js deps: update React Native to version 0.59 6 years ago
package-lock.json feat: mobile chat emojis 5 years ago
package.json feat: mobile chat emojis 5 years ago
plugin.head.html Adds empty SSI templates to avoid 404. 10 years ago
title.html Adjust some paths to respect base. 6 years ago
webpack.config.js fix(dialog): Don't steal focus 5 years ago

README.md

Jitsi Meet - Secure, Simple and Scalable Video Conferences

Jitsi Meet is an open-source (Apache) WebRTC JavaScript application that uses Jitsi Videobridge to provide high quality, secure and scalable video conferences. Jitsi Meet in action can be seen at here at the session #482 of the VoIP Users Conference.

The Jitsi Meet client runs in your browser, without installing anything on your computer. You can try it out at https://meet.jit.si .

Jitsi Meet allows very efficient collaboration. Users can stream their desktop or only some windows. It also supports shared document editing with Etherpad.

Installation

On the client side, no installation is necessary. You just point your browser to the URL of your deployment. This section is about installing a Jitsi Meet suite on your server and hosting your own conferencing service.

Installing Jitsi Meet is a simple experience. For Debian-based system, following the quick-install document, which uses the package system. You can also see a demonstration of the process in this tutorial video.

For other systems, or if you wish to install all components manually, see the detailed manual installation instructions.

Download

Latest stable release release

You can download Debian/Ubuntu binaries:

You can download source archives (produced by make source-package):

You can get our mobile versions from here:

Building the sources

Node.js >= 10 and npm >= 6 are required.

On Debian/Ubuntu systems, the required packages can be installed with:

sudo apt-get install npm nodejs
cd jitsi-meet
npm install

To build the Jitsi Meet application, just type

make

Working with the library sources (lib-jitsi-meet)

By default the library is build from its git repository sources. The default dependency path in package.json is :

"lib-jitsi-meet": "jitsi/lib-jitsi-meet",

To work with local copy you must change the path to:

"lib-jitsi-meet": "file:///Users/name/local-lib-jitsi-meet-copy",

To make the project you must force it to take the sources as 'npm update':

npm install lib-jitsi-meet --force && make

Or if you are making only changes to the library:

npm install lib-jitsi-meet --force && make deploy-lib-jitsi-meet

Alternative way is to use npm link. It allows to link lib-jitsi-meet dependency to local source in few steps:

cd lib-jitsi-meet

#### create global symlink for lib-jitsi-meet package
npm link

cd ../jitsi-meet

#### create symlink from the local node_modules folder to the global lib-jitsi-meet symlink
npm link lib-jitsi-meet

After changes in local lib-jitsi-meet repository, you can rebuild it with npm run install and your jitsi-meet repository will use that modified library. Note: when using node version 4.x, the make file of jitsi-meet do npm update which will delete the link. It is no longer the case with version 6.x.

If you do not want to use local repository anymore you should run

cd jitsi-meet
npm unlink lib-jitsi-meet
npm install

Running with webpack-dev-server for development

Use it at the CLI, type

make dev

By default the backend deployment used is beta.meet.jit.si. You can point the Jitsi-Meet app at a different backend by using a proxy server. To do this, set the WEBPACK_DEV_SERVER_PROXY_TARGET variable:

export WEBPACK_DEV_SERVER_PROXY_TARGET=https://your-example-server.com
make dev

The app should be running at https://localhost:8080/

Contributing

If you are looking to contribute to Jitsi Meet, first of all, thank you! Please see our guidelines for contributing.

Embedding in external applications

Jitsi Meet provides a very flexible way of embedding in external applications by using the Jitsi Meet API.

Security

WebRTC does not provide a way of conducting multi-party conversations with end-to-end encryption. Unless you consistently compare DTLS fingerprints with your peers vocally, the same goes for one-to-one calls. As a result, your stream is encrypted on the network but decrypted on the machine that hosts the bridge when using Jitsi Meet.

The Jitsi Meet architecture allows you to deploy your own version, including all server components. In that case, your security guarantees will be roughly equivalent to a direct one-to-one WebRTC call. This is the uniqueness of Jitsi Meet in terms of security.

The meet.jit.si service is maintained by the Jitsi team at 8x8.

Mobile app

Jitsi Meet is also available as a React Native app for Android and iOS. Instructions on how to build it can be found here.

Acknowledgements

Jitsi Meet started out as a sample conferencing application using Jitsi Videobridge. It was originally developed by ESTOS' developer Philipp Hancke who then contributed it to the community where development continues with joint forces!