On July 8, 2026, Hendrik announced that Chatto — the team chat app he's been building for roughly a year — is fully open source and ready to self-host. The Hacker News thread hit 791 points with 211 comments, mostly from people who have been waiting for a fast, boring, self-hosted Slack/Discord that does not hide SSO behind an enterprise invoice.
Chatto rhymes with "knack" and "beams" on purpose. The UI is channel-first, server-sidebar Discord-style, with voice huddles powered by LiveKit. What sets it apart is architectural: one compact binary serves the Svelte frontend and Go backend, NATS handles realtime messaging, and you can spin up a community in minutes without PostgreSQL on day one. For teams already running self-hosted infrastructure or shopping for European-owned hosting, this is the most polished OSS chat launch of mid-2026.

TL;DR: What people are asking
| Question | Answer |
|---|---|
| Slack or Discord clone? | Both vibes — channel chat, server list, roles, files, embeds, voice/video. Optimized for snappiness, not novelty UI. |
| License? | Backend AGPL-3.0; frontend/docs Apache-2.0. Dual license stops hosted forks without source; frontend stays fork-friendly. |
| Federation? | No. One server = one community. Client connects to multiple servers directly (Discord pattern), not Matrix/XMPP mesh. |
| E2E chat? | No — encrypted at rest, crypto-shred on delete. Calls are E2E via LiveKit. |
| SSO? | Included — not enterprise-gated (unlike Mattermost prebuilt binaries). |
| Mobile app? | PWA works today; native mobile on roadmap. Tauri wrapper for desktop daily-driver. |
| Maturity? | v0.4 — production-usable per author; 1.0 in 6–12 months; breaking changes possible. |
| Contributions? | README says not accepting outside contributions right now. |
| Stars? | ~760+ on GitHub within hours of the announcement. |
What shipped on July 8
Hendrik's announcement post frames Chatto as "the group chat application that you actually enjoy using" — with an explicit jab at the OSS chat space: "you can just self-host it. For free, too! (A weird thing to write, but the OSS chat app space has become very weird in many ways!)"
That jab lands. Mattermost open-core licensing gates SSO and LDAP on prebuilt binaries. Rocket.Chat and others pile on enterprise tiers for features teams expect day one. Chatto puts SSO, voice, video, screen share, and webhooks in the same AGPL bundle.
Core promises:
- Single binary — executable serves the web UI; no separate frontend deploy
- Lightweight — designed for small VPS or homelab; scales out with Compose/K8s
- Privacy-first — no third-party analytics; PII never leaves your box
- Per-user encryption at rest — keys shredded when users delete accounts (GDPR-friendly framing)
- Multi-server client — hang out in several communities without federation between backends
- Voice/video — LiveKit (Apache-2.0), E2E encrypted calls, scales with your infra
Chatto Cloud — paid EU-hosted beta coming — is deliberately boring: hosting only, no ads, no premium feature tiers, exportable to self-host anytime.
Stack under the hood
Self-hosting is more than ./chatto if you want production durability. docs.chatto.run documents the full shape:
| Component | Role | Notes |
|---|---|---|
| Chatto binary | API + Svelte UI | Go backend, protobuf realtime endpoint |
| NATS | Message broker + stream persistence | HN veterans praised NATS reliability |
| LiveKit | Voice, video, screen share | Deploy alongside Chatto; Apache-2.0 |
| S3-compatible storage | Attachments, media | Strongly recommended over local disk |
| Web Push / VAPID | Notifications | Safari Web Push finally viable on iOS |
The protobuf API is optimized for small payloads — early testers (including HN user moeffju) cite channel switches and scrolls that feel instant compared to Slack's lag. That performance story is Chatto's real moat against incumbents, not a radical new UX.
Quick start:
brew install chattocorp/tap/chatto
chatto init
chatto run
Linux/Windows binaries and Docker Compose paths are on the releases page.
AGPL vs Apache: why dual license?
Simon Willison's HN question — why is the Go backend AGPL but the TypeScript frontend Apache 2.0? — got the standard answer: AGPL treats network use as distribution, so a competitor cannot run a modified backend as SaaS without publishing source. The Apache frontend allows white-label skins and custom clients.
Grafana made the same move in 2021. For operators, the practical effect is:
- Self-host privately — no source publication obligation if you do not distribute modifications over a network to third parties in the AGPL sense beyond your users accessing your instance
- Fork the UI freely — build custom clients, bots, Tauri shells
- Host a public competing cloud on modified backend — you must open-source backend changes
HN's AGPL debate thread is predictable; for EU companies evaluating vendors, AGPL plus EU Chatto Cloud is a coherent sovereignty story alongside Apertus-style open stacks.
Hacker News: debates that matter
Performance vs furniture
Critics like dofm wanted less UI chrome — "far too much furniture on screen." Defenders counter that complaints about Slack/Discord are performance-related, not aesthetics. Chatto bets the same visual language with faster renders wins migrations from tired teams.
Network effects and Slack vendors
jacobgold raised the classic objection: coworkers and customers already live on Slack. Chatto does not federate with Slack — only a migration tool (Slack → Chatto), not ongoing interop. Realistic use cases today:
- Internal company chat where IT mandates the switch
- Friend groups who want a private Discord without Discord Inc.
- Open-source communities tired of Discord moderation optics
- EU orgs aligning chat data residency with sovereign compute narratives
Matrix, XMPP, and "we need an open protocol"
Multiple commenters asked for Matrix federation. Chatto explicitly chose anti-federation, pro-performance — each server is isolated; the client aggregates connections. Bridges via protobuf may appear, but the mission is not another XMPP round-trip. If you need federated identity across orgs, Matrix or Zulip remain better fits.
Mattermost, Zulip, Fluxer, Rocket.Chat
| App | Chatto advantage | Chatto gap |
|---|---|---|
| Mattermost | SSO not paywalled; faster UX; simpler single-binary start | Mattermost's plugin ecosystem, longer battle-testing |
| Zulip | Channel UX familiar to Slack refugees; voice built-in | Zulip's threading model for async-heavy teams |
| Matrix/Element | Speed, simplicity, no key-loss drama | Federation, E2E option, bridge network |
| Fluxer | Already open, self-host ready per Fluxer dev | Fluxer has account-switching across instances in progress |
| Rocket.Chat | Cleaner licensing story for voice+SSO | Rocket.Chat's omnichannel sales stack |
AI-assisted development backlash
A thread fork debated Hendrik building with agentic coding — some HN users pledged to avoid the project on AI ethics grounds. Technically irrelevant to operators; culturally relevant if your org has no-AI-assist procurement policies.
Mobile and onboarding friction
- PWA install works on Android; iOS push improved with Web Push but native apps remain roadmap
- Tauri desktop (chatto-tauri) is a daily driver for early adopters
- Feature request: one-click invite links that pre-provision accounts (Zoom-style) — not shipped yet
Enterprise deletion vs employer ownership
duttish noted GDPR right to deletion conflicts with employer-owned work messages — soft-delete and policy choices still evolving for v0.5 moderation/reporting focus.
What is still missing (v0.4 → 1.0)
From the public roadmap:
- Content reporting and moderation (0.5 focus)
- Polished multi-server client behavior
- Native mobile apps (beyond PWA/Tauri POC)
- Public read-only channel views (Linen/Answer Overflow-style discoverability)
- Slack/Discord ongoing interop — not committed
Hendrik expects 1.0.0 in 6–12 months with minimal breaking changes, but self-hosters should plan upgrade cadence.
Who should try Chatto
Small teams leaving Slack over cost or performance — especially if SSO is non-negotiable and Mattermost licensing annoyed you.
Communities that want Discord ergonomics on your own Hetzner box — HN users report LiveKit stacks on Hetzner are cheap at scale.
European companies waiting for Chatto Cloud — EU-owned infra, nightly backups, zero-downtime upgrades, no lock-in.
Privacy-conscious groups who do not need message E2E because they trust their own server — same model as most internal Wikis and self-hosted dashboards.
Not yet: teams needing Slack customer channels, Matrix federation, or IRC-minimal text-only UX.
Bots, webhooks, and agents
HN's mikkelam — "Slack integrations are overrated. Just give me webhooks." — matches how agent harnesses actually integrate: HTTP callbacks, not 400 marketplace plugins.
Chatto supports webhooks and bot frameworks; community member moeffju maintains a bot framework updated for the open-source drop. For OpenClaw-style personal agents, Chatto is a plausible notification and human-in-the-loop channel if you self-host both on the same VPC.
Related reading
- Go Open Source AI for Business (2026) — self-hosting culture, LiteLLM, and when to run infra yourself
- Europe AI Landscape 2026 — EU data residency and sovereign vendor framing
- Apertus Open Foundation Model — European open-stack philosophy parallel to Chatto Cloud
- World Monitor Open Source Dashboard — another 2026 viral self-hosted OSS project pattern
- What is OpenClaw? — agent gateways that pair with team chat webhooks
- Langflow vs n8n vs Make — when webhooks beat plugin marketplaces for automation
Official sources: Chatto announcement · GitHub — chattocorp/chatto · Self-hosting docs · HN discussion
Accurate as of July 9, 2026. Version 0.4, star counts, and Chatto Cloud beta timing reflect the public announcement — verify on chatto.run before production rollout.
