bundle nchat - nself-org/cli GitHub Wiki

ɳChat Plugin Bundle

Contents

What Is ɳChat

ɳChat is the marketing name for the bundle of plugins that powers the chat reference app. It is not a repo or a single plugin. When the bundle is installed, your ɳSelf backend gains real-time messaging, video and audio calls, call recording, moderation, bots, and authentication, every feature of a modern team chat product.

ɳChat pairs with the chat repo, an open-source self-hosted messaging app (Next.js + Capacitor + Electron + Tauri). Without the bundle the chat app still runs core messaging; pro features (video, recording, advanced moderation, bots) hide gracefully via runtime feature detection.

Plugins Included

7 pro plugins, all tier: pro (Basic tier or higher).

Plugin Tier Language What It Does
chat pro Go Channels, DMs, threads, reactions, pins, search
livekit pro Go Audio and video call rooms (WebRTC SFU)
recording pro Go Call recording with playback
moderation pro Go Auto-moderation, word filters, spam detection, user reports
bots pro Go Bot framework with slash commands and event subscriptions
realtime pro Go WebSocket presence, typing indicators, read receipts
auth pro Go Advanced auth: SSO, MFA, session management

How They Work Together

Client (chat/) → realtime + chat → channels, DMs, threads
                       ↓
         livekit (calls) + recording (capture) + moderation (filter) + bots (automation)
                       ↓
                       auth (SSO, MFA)

Messaging

  1. chat stores channels, DMs, threads, messages, reactions, pins, attachments
  2. realtime maintains WebSocket connections for typing indicators, presence, read receipts, live updates

Voice and video

  1. livekit runs the WebRTC SFU for audio and video call rooms
  2. recording captures audio and video streams to MP4 with playback support

Safety

  1. moderation scans messages for banned content, spam patterns, and rate-limit abuse
  2. bots lets administrators install custom bots that respond to slash commands or react to events

Identity

  1. auth provides SSO connectors (SAML, OIDC), MFA enforcement, and session management beyond the default auth service

Installation

# Basic tier or higher (all nChat plugins are tier: pro)
nself license set nself_pro_xxxxx...
nself plugin install chat livekit recording moderation bots realtime auth

# Rebuild and start
nself build && nself start

Basic tier is $0.99/mo or $9.99/yr. See Plugin-Licensing for the tier comparison.

Getting Started

Prerequisites

  • ɳSelf CLI installed and a project initialized (nself init)
  • Backend running (nself start)
  • Basic tier license key or higher
  • TURN/STUN credentials for livekit if running across NAT
  • Object storage configured for recording (MinIO comes free with the ɳSelf stack)

Step 1: Install the plugins

Install all 7 ɳChat plugins with the command above.

Step 2: Configure LiveKit

Edit your .env to set LiveKit API keys and TURN credentials. See plugin-livekit.

Step 3: Configure moderation

Set word lists and rate limits for moderation. See plugin-moderation.

Step 4: Connect the chat client

Clone nself-org/chat, copy .backend.example/ to .backend/, set the license key, and run nself build && nself start from .backend/. Then pnpm dev in the frontend.

Troubleshooting

  • Calls fail to connect: verify LiveKit ports are reachable and TURN credentials are valid
  • Recordings missing: check object storage credentials and that the recording container has write access
  • Moderation too aggressive: tune word lists and rate limits per channel

Related Pages