mrkeyoor.com_
Fri 18 Sept 07:19 UTC
Self-Hostedevaluationupdated 18 Sept 2026

jitsi-meet review

Jitsi Meet is an open-source video meeting client for browsers and mobile apps, with SDKs for putting calls inside another product. Self-hosting it gives you control over the meeting service, but the working system extends well beyond this TypeScript repository.

Verdict

Our Jitsi Meet run installed 1,706 packages and consumed 1,256 MB, yet the checkout offered no standard build or test target and npm audit found 58 known vulnerabilities. Use it when you need a mature meeting product and have an operator who can own the wider Jitsi stack. If you only need video inside a custom application, a media server with narrower responsibilities will be easier to reason about.

We ran it

Lab card: what happened when we ran jitsi-meetScreenshot of jitsi-meet (jitsi.org/meet)
Install✓ · 88s1706 packages · 1256 MB
Buildn/ano build script
Testsn/ano test script
Known vulns581 critical · 23 high · 33 moderate · 1 low (npm audit)
Repo3157 files~280,344 lines of source · 156.2 MB · 5 CI workflows · tests dir

Answers from our run

Does jitsi-meet build from source?

Dependencies installed in 88 seconds (1706 packages), and the project has no separate build step. We cloned commit 5f7ce9a into a clean Debian container with 3 CPUs and no project-specific setup.

Does jitsi-meet have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does jitsi-meet have known vulnerabilities in its dependencies?

npm audit flagged 58 known advisories in the dependency tree, including 1 critical at the time of our run.

Who should not use jitsi-meet?

Developers expecting npm install to produce a deployable conference server: the handbook directs operators to Debian packages or the separate Docker distribution.

What are the alternatives to jitsi-meet?

BigBlueButton, LiveKit, Element Call. Our Jitsi Meet run installed 1,706 packages and consumed 1,256 MB, yet the checkout offered no standard build or test target and npm audit found 58 known vulnerabilities.

Setup2/588-second install; deployment spans several networked services
Docs5/5The handbook covers packages, Docker, networks, auth, and scaling
Community5/529,935 stars with code and issue activity in September 2026
Maturity4/5Frequent releases, offset by 58 npm audit findings

Discussed on

  1. hnEnhanced noise suppression in Jitsi Meet322 points
  2. hnJitsi Meet Electron 2.0213 points
  3. hnJitsi Meet Flutter SDK178 points
  4. hnJitsi Meet abandons anonimity promise80 points
  5. hnJitsi Meet, the open source Zoom alternative, was downloaded 1.4M times in March74 points

Who it’s for

Organizations that want a branded browser and mobile meeting service on infrastructure they control.
Product teams that need web and native SDKs instead of sending users to a separate calling app.
Operators who already understand DNS, TLS, firewalls, NAT, XMPP, and real-time media routing.
Teams willing to run Debian packages or the separate Docker distribution and keep the full stack updated.

Who it’s NOT for

Developers expecting npm install to produce a deployable conference server: the handbook directs operators to Debian packages or the separate Docker distribution.
Small teams that do not want to own real-time networking: the official guide requires a domain, trusted TLS, firewall rules, and correct media routing through NAT.
Organizations that require a clean dependency audit before evaluation: our sandbox found 58 known vulnerabilities, including 1 critical and 23 high.
Operators planning many simultaneous recordings on a small host: the requirements guide says each concurrent recording needs its own Jibri instance.
Administrators new to server capacity planning: Jitsi's own requirements page warns that mistakes can break calls rather than merely slow them down.

Setup reality

Our sandbox installed 1,706 npm packages in 88 seconds and used 1,256 MB on disk. The checkout had no build script or test script, so both steps were skipped. Npm audit reported 58 known vulnerabilities: 1 critical, 23 high, 33 moderate, and 1 low.

A real service needs a domain, DNS, trusted TLS, firewall rules, and the Prosody, Jicofo, and Videobridge pieces. The supported operator paths are Debian packages or the separate Docker distribution. Restricting who can create rooms adds an authentication choice such as JWT.

The package metadata at commit 5f7ce9a requires Node 24 or newer and npm 11 or newer, although our Node 22 image completed installation. This repository has no Dockerfile. NAT deployments must advertise the correct media address, and a successful npm install says nothing about whether multi-party audio and video can traverse the network.

The 156.2 MB checkout is one part of the meeting service

Jitsi Meet's repository is the interface people see in a call. The 156.2 MB checkout contains 3,157 files and roughly 280,344 lines of source, covering the browser client, React Native apps, shared features, translations, and integration surfaces. Users get audio and video, screen sharing, chat, polls, reactions, and virtual backgrounds. Product teams can embed meetings through web and native SDKs instead of rebuilding those controls.

The server behind that interface is spread across other Jitsi components. Prosody handles XMPP signaling, Jicofo coordinates conferences, and Jitsi Videobridge routes media. Recording brings in Jibri, while SIP and transcription can add Jigasi. That split is sensible for a long-running communications project, but it changes the buying decision. Adopting the GitHub repository means adopting a system of services, configuration files, network paths, and release procedures.

What happened when we ran it

Our sandbox installed commit 5f7ce9a in 88 seconds. Npm added 1,706 packages and the installed tree occupied 1,256 MB. The container had 3 CPUs, 8 GB of RAM, no secrets, and Node 22. Installation succeeded, so a developer can at least obtain the dependency tree in a clean Debian environment without private credentials. The result does not prove that a conference can start.

The repository exposed no standard build script and no standard test script, so our harness skipped both steps. Its package scripts include linting, TypeScript checks, validation, and development commands, but there was no honest build or test target for the lab to call. Our scan did find a tests directory and 5 CI workflow files. Those are positive maintenance signals, although they cannot be converted into a passing local test result.

Npm audit reported 58 known vulnerabilities: 1 critical, 23 high, 33 moderate, and 1 low. The audit alone does not show which findings are reachable in a deployed meeting, and our run did not make that claim. It does make dependency review a release condition. A team evaluating Jitsi should map each advisory to browser, mobile, development, or server exposure before putting this exact tree into production.

A successful npm install does not create a conference server

The 1,706-package install prepares this client repository, while Jitsi's handbook sends self-hosters down two different routes. One installs coordinated Debian packages. The other uses releases from docker-jitsi-meet, a separate repository that runs web, Prosody, Jicofo, and Videobridge containers. The Docker guide explicitly tells users to download its latest release instead of cloning it for normal deployment. This checkout also has no Dockerfile, which matches that separation.

Either route needs a real hostname, DNS, and a trusted TLS certificate. The Debian guide opens TCP ports 80 and 443, UDP port 10000 for meeting media, and a TCP fallback through coturn. A default public install lets anyone who can reach it start a room. Operators who need controlled room creation must configure authentication, with the current handbook recommending JWT rather than its deprecated secure-domain method.

NAT and media capacity decide whether calls work

Our 8 GB sandbox measured repository setup only. Jitsi's requirements guide also suggests 8 GB for a typical server, but that coincidence is not a capacity test. The handbook says real-time requirements depend heavily on traffic, resolution, network reliability, and topology. It warns that a poor estimate can break basic functionality. Load testing with the expected room sizes and client networks is therefore part of installation, not a later tuning exercise.

Network mistakes have sharp symptoms. A host behind NAT must advertise the address that receives WebRTC media, even when a reverse proxy already handles the website. The Docker guide warns that calls can fail when more than 2 users join if the advertised address is wrong. Recording has another hard boundary: the requirements page assigns 1 Jibri system to each meeting being recorded, so concurrent recordings scale infrastructure directly.

The client spans web and mobile, which raises change cost

A 280,344-line source tree buys a lot of finished behavior. Jitsi supports current browsers, Android, iOS, content sharing, private chat, polls, and reactions. The same repository includes React and React Native dependencies, platform folders, translation files, and configuration options that can hide or reshape features. That breadth is attractive when your desired product resembles Jitsi Meet and expensive when your product wants a much smaller calling surface.

Embedding is more credible than a thin iframe afterthought because Jitsi publishes web and native SDK paths. Still, custom branding and feature switches do not turn the system into a neutral media primitive. Teams making a deeply custom workflow will spend time understanding conference state, mobile behavior, and upstream configuration changes. LiveKit is the cleaner alternative when the meeting interface itself is the work you want to own.

Five CI workflows and September activity point to active maintenance

The repository had 5 CI workflow files, 29,935 stars, and 143 open issues and pull requests when fetched. Its last push was September 18, 2026, with issue and pull request activity on the same date. Release 2.0.11248 arrived on September 14. Those dates support an active-project judgment, while the combined open count should not be misread as 143 confirmed bugs.

Maturity does not cancel operating cost. The 88-second install and current release cadence make Jitsi Meet reasonable to evaluate, while 58 audit findings and the absent standard test target demand local release checks. Choose it for a recognizable, full meeting product that your team is prepared to operate. Choose a narrower real-time stack when the goal is to invent the call experience rather than run Jitsi's.

Alternatives

ProjectWhat it isPick it when
BigBlueButtonA self-hosted conferencing system built around virtual classrooms and teaching workflows.pick this instead when lessons, presenter controls, whiteboards, and classroom management define the product.
LiveKit gh↗A real-time media server and SDK stack for building a custom calling or agent experience.pick this instead when you want media infrastructure and APIs rather than a finished meeting interface.
Element CallA group calling application built around Matrix rooms and identity.pick this instead when Matrix membership and federation should shape the calling experience.

What people are saying

  1. [velocity-scout] jitsi/jitsi-meet

Sources

  1. Jitsi Meet repository and README
  2. Jitsi Meet Debian and Ubuntu self-hosting guide
  3. Jitsi Meet server requirements
  4. Jitsi Meet Docker self-hosting guide
  5. Jitsi Meet 2.0.11248 release

More self-hosted reviews

celld · EchoMuse · versitygw · Octop · newsnow · forem · the whole board →