Chatto logo

Chatto

Self-hosted team and community chat with built-in voice and video calls

Alternative to: slack, discord, microsoft teams


About Versions (100)

v0.1.0-rc.0

2026-06-16

This release candidate focuses on making Chatto 0.1.0 more dependable for real self-hosted and Chatto Cloud use before the final 0.1.0 release.

Highlights

Sign-in and Setup

  • External Login Providers: Chatto now supports multiple external login providers, including OIDC, GitHub, GitLab, Google, and Discord. Server operators can expose those providers directly on the login page.
  • Better Default Configs: New chatto init configs are more production-ready, with clearer defaults for logging, storage, CORS, and embedded NATS.
  • Stricter Config Checks: Configuration validation is stricter, so invalid secrets, URLs, origins, and integration settings are caught at startup instead of failing later.

Permissions and Administration

  • Permissions Update: The permissions model is simpler and more predictable: owners keep full control, and explicit denies now win for everyone else.
  • Prometheus Metrics: Prometheus-compatible metrics are available for operators who want visibility into readiness, websocket activity, NATS, projections, services, and process health.

Calls and Realtime Reliability

  • More Reliable Calls: Voice calls are more resilient when multiple server replicas are running, and stale call events are less likely to affect a newer call.
  • Call Timeline Notices: Rooms now show call started and call ended notices in the timeline.
  • Reconnect Recovery: After reconnecting or waking from sleep, the current room refreshes from server state so missed messages, thread updates, and projected state are less likely to go stale.

Chat Polish

  • Remembered Sidebars: Sidebar visibility preferences are remembered on desktop.
  • Smarter Mentions and Previews: Mentions and link previews now ignore Markdown code and quoted text, reducing accidental notifications and previews.
  • Edit Window Guard: Pressing ArrowUp no longer starts editing a message after its edit window has expired.
  • Safer Concurrent Changes: Several concurrency fixes make reactions, room names, and room organization more reliable under simultaneous changes.

Upgrade Notes

  • Review Permissions: Server operators should review existing role, user, and room permission overrides after upgrading because permission resolution changed.
  • Check Config Files: Existing hand-edited config files may need cleanup if they contain malformed values that older versions accepted.
  • Review GraphQL Changes: Client developers should review the generated changelog below for GraphQL breaking changes around viewer, live event subscriptions, and event delivery cursors.

0.1.0-rc.0 (2026-06-16)

⚠ BREAKING CHANGES

  • refresh current room on reconnect (#878)
  • auth: stabilize cookie session auth (#883)
  • simplify RBAC permissions (#880)

Features

  • add per-process Prometheus metrics (#877) (34a88e5)
  • auth: support external auth providers (#873) (ff2fb06)
  • make LiveKit reconciliation resilient (#869) (82a5bc9)
  • show call lifecycle notices in room events (#867) (b652c4f)

Bug Fixes

  • auth: stabilize cookie session auth (#883) (376a268)
  • cli: improve generated chatto config defaults (#872) (7ba64b7)
  • config: tighten chatto config validation (#868) (8b45012)
  • core: align projection snapshots with OCC (#864) (f805493)
  • frontend: prevent expired edit via ArrowUp (#879) (bbae3aa)
  • ignore markdown code mentions and previews (#866) (37933cb)
  • refresh current room on reconnect (#878) (8066af7)
  • remember sidebar visibility preferences (#862) (ec13041)

Code Refactoring