Jitsi Meet — Overview
What Jitsi Meet is, how it works, and when to use it in your web apps.
The Scenario That Explains It
You are a tutor. You have 30 students. You want each student to have a private one-on-one session with you at a scheduled time slot. You need 30 separate "rooms" — one per student — that open at their scheduled time and can't be accidentally joined by other students.
With most video tools, you'd manually create 30 Zoom links, copy-paste them into 30 emails, and pray that no one clicks the wrong link.
With Jitsi Meet, a room is just a name. You make up the name. The room automatically exists the moment someone visits that URL. No account creation. No admin panel. No manually clicking "Create Meeting." The room your-session-abc123 exists the moment you go to https://meet.jit.si/your-session-abc123. And your-session-xyz789 is a completely separate room. This is how room names work.
What Is Jitsi Meet
Jitsi Meet is open-source video conferencing software. "Open source" means the code is public and free — anyone can use it, inspect it, or run their own copy.
It has two versions that matter to you:
meet.jit.si — The public instance run by the Jitsi team. Free. No account needed. Anyone can create a room by visiting the URL. This is what we embed in React apps when we don't want to manage our own server.
Self-hosted Jitsi — You download and run Jitsi on your own server (a DigitalOcean or AWS machine). You control everything: storage, privacy, custom domain. This costs money (server cost) but gives complete control. Not relevant in training — but good to know it exists.
Used by real organisations worldwide: Jitsi Meet is used by governments, healthcare systems, and schools globally. The German government used it for secure communications. Multiple Indian state governments adopted it during COVID for remote education. It is production-grade software.
How Room Names Work
This is the most important concept to understand before touching any code.
A Jitsi room is identified purely by its name in the URL:
https://meet.jit.si/sahinov-batch01— anyone who visits this URL is in this roomhttps://meet.jit.si/consultation-appointment-id-4892— completely separate roomhttps://meet.jit.si/anything-you-want— a new room is created the moment it's visited
What this means for your app:
When a teacher schedules a parent-teacher meeting, you generate a unique room name (e.g., using the appointment ID: meeting-4892). You put that name in the Jitsi embed on the appointment confirmation page. Both the teacher and the parent go to that page — they are in the same private video room.
Important limitation: Anyone who knows the room name can join. There is no password by default (though Jitsi does support passwords). For a true production app with sensitive consultations, you'd use Daily.co's participant tokens instead. Jitsi's privacy model is: obscurity of the room name, not access control.
The @jitsi/react-sdk Package
The Jitsi team publishes an official React package that wraps the Jitsi iframe in a React component. You don't have to manually create iframes or deal with the Jitsi JavaScript API directly.
It exports one primary component: JitsiMeeting. You pass it a domain, a room name, and a few optional settings. It renders a full video call interface in your page.
That is genuinely all there is to the installation step.
Account Requirements
For meet.jit.si: none. You do not create an account. You do not get an API key. You do not pay anything. You use it. This is the open-source model.
The tradeoff: Because there is no account, there is no programmatic room management. You cannot list rooms, set expiry times, or control access via tokens. Room names are the only mechanism.
For the majority of prototype and early-stage use cases, this is perfectly fine.
Privacy Considerations
Before using Jitsi with real client data — especially in CA/legal/medical contexts — understand these points:
Data routing: By default, your video traffic passes through Jitsi's servers in Europe. For most Indian B2B apps this is acceptable, but some regulated industries (healthcare data, legal privileged communication) may require self-hosted infrastructure.
No recording by default: meet.jit.si does not record calls. If you need recordings, you'd need to self-host or use Daily.co (which has recording APIs).
No participant authentication: Anyone with the room URL can join. The room name is your only "password." For genuine private consultations in production, use Daily.co's token system (covered later in this module).
Perfect for: Internal team calls, training sessions, early-stage demos, features where privacy requirements are low, prototyping.
Not ideal for: Regulated professional advice (CA-client privilege, doctor-patient), anything where you need a complete audit trail of who was in the room.
What Jitsi Gives You Out of the Box
When you embed a Jitsi room, you get all of this without writing a single line of video code:
- HD video and audio
- Screen sharing
- Chat sidebar
- Raise hand
- Tile and speaker view
- Recording (on self-hosted, not meet.jit.si)
- Background blur
- Participant list
- Mute/unmute controls
- Mobile browser support
- End-to-end encryption option
You are getting a full-featured video conferencing product embedded in your app. This is why it is the fastest path from zero to working video.
Next Step
Now that you understand what Jitsi is, the next page walks through the actual code — installing the package, importing the component, and embedding your first working video room.