End-to-end encryption
Keys are generated in your browser and wrapped with your passphrase. The server only ever stores ciphertext — for messages, file uploads, voice memos, and even generated TTS audio.
WordPress plugin · Self-hosted · all2one.chat
All2One SiteChat turns any WordPress site into a real-time chat platform. Messages are end-to-end encrypted in the browser before they ever touch your server, and everything else — channels, voice rooms, emotes, themes, even an AI agent — lives right alongside your site. No third-party chat cloud, no per-seat pricing, no exported user data.
What it gives you
Everything a modern community expects — encryption, voice, video, emotes, themes, and an AI teammate — served by your own WordPress install.
Keys are generated in your browser and wrapped with your passphrase. The server only ever stores ciphertext — for messages, file uploads, voice memos, and even generated TTS audio.
Full dark and light modes with user-customizable colors. Restyle the entire interface to match your community — or your mood — without touching code.
Upload your own emote catalog, use animated emojis, and search GIFs inline. Reactions, replies, and emote-only messages all render the way you'd expect.
Type $TICKER and a live quote card renders right in the conversation — price, change, and market context without leaving chat.
A resident AI agent with its own account, threads, and heartbeat-driven presence dot. Chat with it in channels or DMs, or join its voice room and just talk.
Browse and join public channels secured by a shared server key, or create private ones where membership is enforced by encryption, not just permissions.
Every channel can open a LiveKit-powered voice room with camera and screen share. 1:1 DM calls work the same way, with moderator controls built in.
One presenter, a big audience: broadcast via Cloudflare Stream (WHIP in, WHEP out) so demo-day crowds watch smoothly without joining the room.
Installable as an app, with Web Push for messages and voice activity, per-conversation notification preferences, and read receipts that sync everywhere.
One platform, many rooms
Quick DMs, busy channels, live voice, and the occasional all-hands broadcast — all in one interface.
Private conversations encrypted to each participant's public key, with typing indicators, reactions, voice memos, and encrypted attachments.
Create, browse, and join channels with avatars, member lists, unread tracking, and per-channel notification preferences.
Low-latency group audio and video with screen share, a live presence sidebar, and moderator mute/kick controls.
Cloudflare Stream broadcast for one-to-many moments — product demos, AMAs, watch parties — with chat running alongside.
Architecture
The client does the cryptography with WebCrypto; the server is a REST relay and key locker. Voice, video, and the AI agent plug in at the edges.
Get started
Sign-up is deliberately simple for members and deliberately controlled for admins: accounts are real WordPress users, and every new member generates their encryption keys on first sign-in — in their own browser.
An admin invites you from the chat roster (or standard WordPress registration). You receive the usual WordPress welcome email with a link to set your password.
On first sign-in, your browser generates your encryption keypair and wraps the private key with a passphrase only you know. The server stores the wrapped blob — it can never read your messages.
Register a WebAuthn passkey so future unlocks are one touch — no passphrase typing on your own devices.
Browse public channels, start DMs, hop into a voice room, pick your theme colors, and say hi to Hermes.
POST /wp-json/all2one/v1/create-user
{ "username": "maya", "email": "maya@example.com" }
# role is always subscriber; WordPress emails
# the new member their password-setup link
Security note
Private keys are generated client-side and stored only in passphrase-wrapped form. Attachments, voice memos, and TTS audio upload as encrypted .enc blobs and decrypt in the recipient's browser. Public channels use a shared server key so new members can read history; private conversations are readable only by their participants. Passkeys (WebAuthn) unlock your keys without ever exposing them.
Your server. Your people. Your keys.
If you already run WordPress, you already run everything All2One SiteChat needs. Create your account, set your passphrase, and your community has an encrypted home in minutes.