A self-hosted home for your community: text channels, direct messages, voice and video, screen sharing, and watch parties. OpenChat connects your existing OpenID Connect provider, self-hosted LiveKit, and optional OpenShare media service.
0.8.52 — web and desktop release. Windows, universal macOS, and Linux downloads are available. Updater signatures are separate from operating-system signing; the macOS build has no Developer ID identity or notarization. See the release validation and limits.
Got feedback, or need help? Come chat in our community Discord!
- Stops authentication failures from reloading the app and repeatedly restarting the update screen.
- Waits for the update check before loading account data and sends missing or expired desktop sessions to sign-in.
- Preserves refresh-token recovery, browser sign-in redirects, and connection recovery during backend outages.
- Adds full-app startup regression coverage; actual Windows installer validation remains a manual check.
0.8.52 release notes · Audit remediation
Download the client for your operating system from GitHub Releases. Desktop clients connect to an OpenChat server; they do not bundle the hosting stack. See the desktop guide for builds and updates.
Host the API and web client using public AMD64/ARM64 images from Docker Hub API, Docker Hub web, or GHCR. From a checkout of this repository:
cp .env.example .env
# Configure your domains, OIDC credentials, LiveKit, and other secrets first.
./scripts/setup.sh
docker compose -f docker-compose.public.yml pull
docker compose -f docker-compose.public.yml up -dThe Compose file defaults to GHCR. Set OPENCHAT_VERSION=0.8.52 in .env to pin the
release. Docker Hub overrides are OPENCHAT_API_IMAGE=minionenjoyer/openchat-api and
OPENCHAT_WEB_IMAGE=minionenjoyer/openchat-web. PostgreSQL, Redis, and LiveKit use
upstream images. Follow the setup guide for HTTPS, OIDC, media routing,
and source builds; copying the environment template alone is not a production setup.
- Build communities with servers, text and voice channels, roles, permissions, and invitations.
- Message friends or channels with replies, edits, reactions, emoji, GIFs, stickers, polls, and pins.
- Search conversations, receive mention alerts, and return to a saved channel reading position.
- Share files, images, voice clips, and soundboard audio through OpenShare.
- Join voice/video calls, share multiple windows, and use voice activity or push-to-talk.
- Watch YouTube or Jellyfin together with host controls and a viewer list.
- Switch OpenChat domains from Settings, with responsive desktop and mobile-web layouts.
- Optionally connect Patreon membership invitations, OpenShare contacts, or a private mirror cluster.
These captures use the development showcase harness and the production React components. They illustrate the interface with fixture participants; they are not evidence of live multi-user audio or cross-host synchronization.
| Public server activity | Private call |
|---|---|
![]() |
![]() |
| Watch party | Multiple shared windows |
|---|---|
![]() |
![]() |
OpenShare is optional; configure it to enable companion uploads and media features. Voice and screen sharing require reachable LiveKit signaling and media routes. YouTube and Jellyfin playback depend on provider policies and host configuration.
Mirror clusters are explicitly configured, key-authenticated groups of trusted hosts, not a global network. CI and single-host smoke checks do not certify multi-client audio, connected-client permission eviction, or real multi-host recovery. Windows/Linux packaged-client runtime checks remain open; see the validation record.
The API sends an installation heartbeat at startup and every 24 hours to the project collector: a persistent random install ID, product, version, and deployment type. The payload contains no messages or user profiles; the collector also receives normal network metadata. There is currently no opt-out setting.
Native phone clients are separately versioned and were not changed in this release. Mobile-web support does not imply native-mobile test coverage.
- Documentation index — current guides and historical evidence.
- Setup and deployment — prerequisites, configuration, backups, and upgrades.
- Architecture — React/Tauri clients, NestJS API, PostgreSQL, Redis, and LiveKit.
- Browser testing and inter-app testing.
- Patreon invitations, OpenShare contact links, and trusted mirror clusters.
Keep credentials in the local, gitignored .env and generated livekit.yaml, never in
commits or issue reports. Run ./scripts/check-secrets.sh before publishing changes.




