Skip to content

Valtora/Nojoin

Nojoin Logo
Nojoin

Self-Hosted Meeting Transcription and Notes

License Latest Version Release

dark
light

What Is Nojoin?

Nojoin is a self-hosted meeting transcription and notes solution.

It captures audio through a supported browser, processes recordings on your own server, and gives you transcripts, speaker separation, meeting notes, search, meeting chat, and a web-based dashboard for day-to-day work.

Nojoin is built for people who want the usefulness of meeting assistants without inviting bots into meetings or defaulting to a SaaS platform for storage and processing.

Why Nojoin?

  • It is free, self-hosted, and open-source.
  • No meeting bot awkwardly joins your calls.
  • Works across any meeting platform, Google Meet, Microsoft Teams, Zoom, Webex, and more. If you can hear it, Nojoin can capture it.
  • Local transcription and speaker attribution on your own infrastructure.
  • Optional cloud LLMs, or fully local AI with Ollama.
  • Web dashboard with recordings, calendar, and a Tasks workspace.
  • Browser-native capture for system audio and microphone input.

Supported Browsers and OSes

  • Chrome for Windows, Linux, and macOS (shared-audio recording)
  • Chromium-family browsers on Windows and Linux (shared-audio recording)
  • Chromium-family browsers on macOS (best-effort shared-audio recording)
  • Chrome (mobile) for Android and iOS (microphone-only recording)

Quick Start

  1. Clone the repository.

    git clone https://github.com/Valtora/Nojoin
    cd Nojoin
  2. Create local deployment files from the tracked examples.

    cp docker-compose.example.yml docker-compose.yml
    cp .env.example .env
  3. Set required environment variables in .env.

    • FIRST_RUN_PASSWORD
    • DATA_ENCRYPTION_KEY (for any persistent deployment)
    • And other API keys as needed for your desired features.
  4. Start Nojoin.

    docker compose up -d
  5. Open the web app.

    https://localhost:14443
    
  6. Complete the first-run wizard.

  7. Open Nojoin in Chrome on Windows, Linux, or macOS for shared-audio recording, in another Chromium-family browser on Windows or Linux, or in Chrome on Android/iOS for microphone-only recording, then start a short test meeting. Other Chromium-family browsers on macOS are best-effort. See docs/CAPTURE.md for browser capture guidance.

Notes:

  • An NVIDIA GPU is strongly recommended for faster processing.
  • CPU-only mode is supported but it is much slower.
  • Browser capture supports shared-audio recording on Chrome for Windows, Linux, and macOS, Chromium-family browsers on Windows and Linux, and best-effort macOS Chromium-family browsers, plus microphone-only recording on Chrome for Android and iOS.
  • Set DATA_ENCRYPTION_KEY once and keep it stable to avoid losing access to previously encrypted calendar credentials after restores or host changes.
  • For remote access, reverse proxy setup, calendar OAuth, updates, and backup guidance, use the documentation below.

Documentation

Project Status

Nojoin is under active development. Back up your instance regularly before upgrading.

Contributing

Contributions are welcome. See CONTRIBUTING.md for the development workflow and contribution expectations.

Security

If you discover a vulnerability, follow the security policy.

Licence

Nojoin is licensed under the GNU Affero General Public License v3.0 (AGPLv3).

Legal

Recording laws vary by jurisdiction. Review the legal disclaimer before using Nojoin.

Support

If Nojoin is useful, please consider buying me a coffee.