CLAUDE.md · jitsi/jitsi-meet
CLAUDE.md from jitsi/jitsi-meet: 268 lines covering Development Commands, Architecture Overview, Development Guidelines, Environment and Setup Requirements…
Template by jitsi
Chalk Labs
Need help deploying CLAUDE.md · jitsi/jitsi-meet?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code. Read the repository before you give any tool access to your data.
curl -fsSL https://raw.githubusercontent.com/jitsi/jitsi-meet/master/CLAUDE.md -o CLAUDE.md
Read it and adapt it to your project before use.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: prompt-engineering, code-generation
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
What's in it
A CLAUDE.md file: project memory Claude Code loads at the start of every session.
- For
- Claude Code
- Length
- 268 lines
- File
CLAUDE.md
Sections
- Development Commands
- Architecture Overview
- Development Guidelines
- Environment and Setup Requirements
- Code Quality Requirements
- Code Style and Standards
- Testing and Quality Assurance
- Common Issues and Debugging
- Architecture Deep Dive
- External Resources
First lines (shown under the repo's Apache-2.0 license)
# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## Development Commands ### Building and Development - `npm run lint-fix` - Automatically fix linting issues - `npm run tsc:ci` - Run TypeScript checks for both web and native platforms - `npm run tsc:web` - TypeScript check for web platform only - `npm run tsc:native` - TypeScript check for native platform only - `npm run lint:ci` - Run ESLint without type checking - `make dev` - Start development server with webpack-dev-server - `make compile` - Build production bundles - `make clean` - Clean build directory - `make all` - Full build (compile + deploy) ### Testing - `npm test` - Run full test suite using WebDriverIO - `npm run test-single -- <spec-file>` - Run single test file - `npm run test-dev` - Run tests against development environment - `npm run test-dev-single -- <spec-file>` - Run single test in dev mode ### Language Tools - `npm run lang-sort` - Sort language files - `npm run lint:lang` - Validate JSON language files ### Platform-Specific TypeScript TypeScript configuration is split between web and native platforms with separate tsconfig files. ## Architecture Overview ### Multi-Platform Structure Jitsi Meet supports both web and React Native platforms with platform-specific file extensions and directories: - `.web.ts/.web.tsx` - Web-specific implementations - `.native.ts/.native.tsx` - React Native-specific implementations - `.any.ts/.any.tsx` - Shared cross-platform code - `.android.ts/.android.tsx` - Android-specific code - `.ios.ts/.ios.tsx` - iOS-specific code - `web/` directories - Web-specific components and modules - `native/` directories - React Native-specific components and modules - `react/features/mobile/` - Native-only features ### Core Directories - `react/features/` - Main application features organized by domain (83+ feature modules) - `modules/` - Legacy JavaScript modules and APIs - `css/` - SCSS stylesheets compiled to CSS - `libs/` - Compiled output directory for JavaScript bundles - `static/` - Static assets and HTML files - `tests/` - WebDriverIO end-to-end tests ### Feature-Driven Architecture The application is organized under `react/features/` with each feature containing: - **`actionTypes.ts`** - Redux action type constants - **`actions.ts`** - Redux action creators (platform-specific variants with `.any.ts`, `.web.ts`, `.native.ts`) - **`reducer.ts`** - Redux reducer functions - **`middleware.ts`** - Redux middleware for side effects - **`functions.ts`** - Utility functions and selectors - **`constants.ts`** - Feature-specific constants - **`logger.ts`** - Feature-specific logger instance - **`types.ts`** - TypeScript type definitions ### Key Application Files - `app.js` - Main web application entry point - `webpack.config.js` - Multi-bundle Webpack configuration - `Makefile` - Build system for development and production - `package.json` - Dependencies and scripts with version requirements ### Bundle Architecture The application builds multiple bundles: - `app.bundle.js` / `app.bundle.min.js` - Main application bundle (entry: `./app.js`) - `external_api.js` / `external_api.min.js` - External API for embedders (entry: `./modules/API/external/index.js`) - `alwaysontop.js` / `alwaysontop.min.js` - Always-on-top window functionality (entry: `./react/features/always-on-top/index.tsx`) - `close3.js` / `close3.min.js` - Close3 functionality (entry: `./static/close3.js`) - `face-landmarks-worker.js` / `face-landmarks-worker.min.js` - Face landmarks detection worker (entry: `./react/features/face-landmarks/faceLandmarksWorker.ts`) - `noise-suppressor-worklet.js` / `noise-suppressor-worklet.min.js` - Audio noise suppression worklet (entry: `./react/features/stream-effects/noise-suppression/NoiseSuppressorWorklet.ts`) - `screenshot-capture-worker.js` / `screenshot-capture-worker.min.js` - Screenshot capture worker (entry: `./react/features/screenshot-capture/worker.ts`) ### Redux Architecture Features follow a Redux-based architecture with: - Actions, reducers, and middleware in each feature directory - Cross-platform state management - Modular feature organization with clear boundaries The codebase uses a registry-based Redux architecture: - **ReducerRegistry** - Features register their reducers independently - **MiddlewareRegistry** - Features register middleware without cross-dependencies - **IReduxState** - Global state is strongly typed with 80+ feature states ### Dependencies - Uses `lib-jitsi-meet` as the core WebRTC library - React with TypeScript support - React Native for mobile applications - Webpack for bundling with development server ### TypeScript Configuration - `tsconfig.web.json` - Web platform TypeScript config (excludes native files) - `tsconfig.native.json` - React Native TypeScript config (excludes web files) - Strict TypeScript settings with ES2024 target - Platform-specific module suffixes (`.web`, `.native`) ### Key Base Features - **`base/app/`** - Application lifecycle management - **`base/conference/`** - Core conference logic - **`base/tracks/`** - Media track management - **`base/participants/`** - Participant management - **`base/config/`** - Configuration management - **`base/redux/`** - Redux infrastructure ### Component Patterns - **Abstract Components** - Base classes for cross-platform components - **Platform-Specific Components** - Separate implementations in `web/` and `native/` directories - **Hook-based patterns** - Modern React patterns for component logic ### Testing Framework - WebDriverIO for end-to-end testing - Test files are located in `tests/specs/` and use page objects in `tests/pageobjects/`. - Environment configuration via `.env` files - Support for Chrome, Firefox, and grid testing ## Development Guidelines ### Adding New Features 1. Create feature directory under `react/features/[feature-name]/` 2. Follow the standard file structure (actionTypes, actions, reducer, etc.) 3. Register reducers and middleware using the registry pattern 4. Define TypeScript interfaces for state and props 5. Use platform-specific files for web/native differences 6. Add feature-specific logger for debugging ### Working with Existing Features 1. Check for existing `.any.ts`, `.web.ts`, `.native.ts` variants 2. Follow established action-reducer-middleware patterns 3. Use existing base utilities rather than creating new ones 4. Leverage abstract components for cross-platform logic 5. Maintain type safety across the entire state tree ### Testing The project uses WebDriver (WebdriverIO) for end-to-end testing. Test files are located in `tests/specs/` and use page objects in `tests/pageobjects/`. ### Build System - **Webpack** - Main build system for web bundles - **Makefile** - Coordinates build process and asset deployment - **Metro** - React Native bundler (configured in `metro.config.js`) ### Platform-Specific Notes - Web builds exclude files matching `**/native/*`, `**/*.native.ts`, etc. - Native builds exclude files matching `**/web/*`, `**/*.web.ts`, etc. - Use `moduleSuffixes` in TypeScript config to handle platform-specific imports - Check `tsconfig.web.json` and `tsconfig.native.json` for platform-specific exclusions ## Environment and Setup Requirements ### System Requirements - **Node.js and npm** are required - Development server runs at https://localhost:8080/ - Certificate errors in development are expected (self-signed certificates) ### Development Workflow
Signals
- Stars
- 30,133
- Forks
- 8,098
- Open issues
- 92
- Last commit (this folder)
- Jan 9, 2026 (9 months ago)
- Last release
- Sep 14, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/jitsi/jitsi-meet
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get CLAUDE.md · jitsi/jitsi-meet running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
CLAUDE.md · jitsi/jitsi-meet. Agent Mart. https://agentmart.dev/templates/jitsi-jitsi-meet-claude-md (last updated 2026-10-24)