Lotus Guild

Private Communications

How to Join

  1. 1 Open chat.lotusguild.org — your homeserver is pre-configured
  2. 2 Register with a token from Jared — @jared:matrix.lotusguild.org
  3. 3 Join the Lotus Guild Space to access all rooms
or join from another server
Already have a Matrix account? Sign up free at mozilla.org or matrix.org, then join our space.

Recommended Client

Our Lotus Guild fork of Cinny adds:

Calls & Voice

  • Voice rooms with our own Element Call fork on a self-hosted LiveKit SFU
  • Push-to-talk and push-to-deafen, with system-wide hotkeys on the Windows app (work while a game has focus)
  • Mic level meter on the mute button; per-person call volume that's remembered between calls
  • On-device noise suppression: Off, browser-native, or ML (RNNoise, Speex, DTLN, DeepFilterNet 3)
  • In-call soundboard with your own clips, synced across your devices
  • Incoming-call ring with Answer/Decline, join/leave sounds, draggable picture-in-picture window
  • Screenshare fullscreen and audio mute; per-user mic/screenshare bitrate and framerate caps
  • Server-enforced room limits and permissions (max participants, audio-only, no screenshare) for every Matrix client
  • AFK auto-mute after a configurable idle time

Messaging

  • Threads with a side panel, unread chips, “Mark all read” and per-thread notification overrides
  • Search operators: from:, in:, before:/after: (dates or 7d), has:link|image|video|file, is:pinned
  • Voice messages with 0.75×–2× playback (MSC3245, E2EE)
  • Polls, message scheduling (MSC4140), forwarding, captions and location sharing
  • Pinned messages, saved messages/bookmarks and private notes on people, synced across devices
  • Who-reacted viewer, read receipt avatars, quick reactions on hover
  • GIF picker (Giphy), custom emoji & sticker packs, math/LaTeX (KaTeX)
  • Pasted code is offered as a formatted code block, with the language detected
  • On-device message translation: text never leaves your machine, works in encrypted rooms

Media & Links

  • Click-to-play inline embeds: YouTube, Vimeo, Twitch, TikTok, X, Instagram, Reddit, Bluesky, Spotify, SoundCloud, Apple Music, Tidal and more
  • Rich link cards for GitHub, Steam, Wikipedia, IMDb, npm and others; animated GIF previews
  • Full-screen viewer with pinch-zoom, swipe/arrow-key navigation and captions; media gallery for every file shared in a room
  • Optional image compression, folder drag-and-drop upload

Privacy & Security

  • Private read receipts, hide typing, hide online status
  • Tracking-parameter stripping (utm_*, fbclid, YouTube si= and ~40 more), on your device
  • Opt-in on-device search index for encrypted rooms, wiped on logout
  • Device verification fixes (cross-client emoji SAS) and a per-member session panel

Look & Feel

  • Lotus Terminal theme, night-light filter, glassmorphism sidebar
  • Animated chat backgrounds and 11 seasonal overlays (all respect reduced motion)
  • 629 animated avatar decorations in 28 categories, visible to other Lotus users (MSC4133)
  • Custom status with emoji and auto-clear, Discord-style presence rings
  • Settings sync across devices (theme, layout, notification and privacy preferences)

Desktop App

  • Windows and Linux (Tauri): installer, AppImage, .deb and Arch package
  • Rich Windows notifications with inline reply; Focus Assist sync
  • Taskbar call controls, jump list and upload progress; tray with call status
  • Stays awake during calls, reconnects on network changes, updates itself

Rooms & Moderation

  • Knock-to-join with an admin approve/deny panel and live pending-count badge
  • Invite links with QR codes, favourites, room filter, room history export (txt/json/html)
  • Room activity & mod log, stats panel, server ACL editor, policy-list viewer
  • Room widgets, with a permission prompt before a widget may read or send in the room

Full list in LOTUS_FEATURES.md.

Prefer the unmodified upstream? cinny.in works with our homeserver — set it to matrix.lotusguild.org.

Already signed in? Jump straight into the community:

Join Lotus Guild Space →

Other Clients

Web & Desktop — Official Cinny

Cinny
Windows macOS Linux Web Voice, Video & Screenshare

The upstream open-source Cinny client, on the web and as a desktop app for Windows, macOS and Linux. It has the same Discord-like UI and space navigation as Lotus Chat, and now includes voice/video calls, voice rooms and screenshare through embedded Element Call, with ringing for DM calls. It lacks our custom additions (no GIF picker, no PiP window, no message forwarding). Set homeserver to matrix.lotusguild.org.

Mobile — iOS & Android

Element X
iOS Android Rust SDK Voice & Video

Element's next-generation mobile client for iOS and Android, built on the Rust SDK with Simplified Sliding Sync for near-instant startup (the iOS app also runs on Apple Silicon Macs). Voice and video calls, 1:1 and group, via embedded Element Call (MatrixRTC). It can view but not start screenshares. Live location sharing, media captions, polls, pinned messages, a media browser and spaces with create and management, plus custom status on supported homeservers. Threads are in Labs. Rust crypto (Vodozemac).

FluffyChat
iOS Android Linux Web Dart SDK Voice & Video (Experimental)

Simple, beginner-friendly Matrix client with a WhatsApp/Telegram-style design, available on Android, iOS, web and Linux desktop. Built on the Dart SDK with Vodozemac encryption. Supports threads, polls, image captions, custom sticker packs, voice messages and spaces. 1:1 voice and video calls exist but remain experimental: they are off by default, DM-only, legacy WebRTC, and there are no group calls.

Discord-like — Android, Windows, Linux & Web

Commet
Android Windows Linux Web Dart SDK Voice, Video & Screenshare

Discord-style client built with Flutter. Multi-account support with all accounts signed in at once, built-in GIF search (Tenor through a privacy proxy, uploaded to your homeserver), shared calendar and photo-album rooms, polls, threads and widgets (new in v0.5.0). 1:1 calls use WebRTC and voice channels use MatrixRTC/LiveKit, with screenshare on desktop, Android and web. Encrypted group calls are experimental. Available for Windows, Linux, Android and on the web at app.commet.chat. Actively developed; macOS and iOS are planned.

Desktop — Windows, macOS & Linux

Element
Windows macOS Linux Web Voice, Video & Screenshare

Element's reference web and desktop client (Electron), with the broadest feature set here: threads, polls, widgets, location sharing, chat export and a room list with sections, filters and sorting. Voice/video calls with screenshare use embedded Element Call when the homeserver provides it, with legacy 1:1 and Jitsi fallbacks. Heavier on resources. Encrypted message search on desktop only (not web).

Nheko
Windows macOS Linux Qt/C++ Voice, Video & Screenshare (1:1, Linux)

Native Qt/C++ desktop client with no Electron and a low resource footprint. It has threads, local encrypted search, custom emoji and sticker packs, and a D-Bus API for Linux integrations. 1:1 voice and video calls with screenshare use legacy WebRTC and are only in Linux builds; there are no group calls. No mobile or web version. Development has slowed: the last release was v0.12.1 in August 2025. A good fit for Linux users who want a lightweight native client.

View all Matrix clients →

Client Feature Comparison

Client comparison last reviewed

← swipe to compare →

Lotus Chatchat.lotusguild.org
Our Cinny fork
Cinnycinny.in
Official
Element XiOS & Android FluffyChatAndroid, iOS, Web & Linux CommetAndroid / Win / Linux / Web ElementWeb & Desktop NhekoDesktop only
Platform
iOS ✗ ✗ ✓ ✓ ✗ ✗ ✗
Android ✗ ✗ ✓ ✓ ✓ ✗ ✗
Desktop app ✓ ✓Cinny Desktop ~iOS build runs on Apple Silicon Macs (no Windows/Linux) ✓ ✓Windows & Linux (macOS: build from source only) ✓ ✓
Web browser ✓ ✓ ✗ ✓ ✓app.commet.chat (v0.5.0) ✓ ✗
Performance Light Light Very fastSliding Sync Moderate Moderate HeavyElectron / JS LightNative C++
Desktop App
Native rich notifications (click→open, inline reply) ✓ ✗ ✗ ~Linux: click opens chat, Mark-as-read/Mute actions; no inline reply ✓Windows & Linux: click-to-open, inline reply, call accept/decline ~ ✓Linux inline reply (D-Bus), macOS quick reply, click-to-open
Windows Jump List (recent rooms) ✓ ✗ ✗ ✗ ✗ ✗ ✗
Taskbar + volume-flyout call controls ✓ ✗ ✗ ✗ ✗ ✗ ✗
Focus Assist → auto Do-Not-Disturb ✓ ✗ ✗ ✗ ✗ ✗ ✗
Stay awake during calls ✓ ✗ ✗ ~wakelock during (experimental) calls ✗ ~ ✗
Recursive folder drag-drop upload ✓ ✗ ✗ ✗ ✗ ✗ ✗
Security & Encryption
E2EE ✓ ✓ ✓ ✓ ✓ ✓ ✓
Vodozemac encryptionstronger crypto track record ✓Rust crypto (matrix-sdk-crypto-wasm) via js-sdk ✓Rust crypto (matrix-sdk-crypto-wasm) via js-sdk ✓Rust SDK ✓dart-sdk ✓dart-sdk ✓Rust crypto (matrix-sdk-crypto-wasm) ✗
Device verification ✓SAS emoji, cross-client requests show inline card ~own devices only (emoji + recovery key) ✓ ✓ ✓ ✓ ✓
Voice & Video
Voice & video calls ✓rooms & DMs, group calls,
screenshare via Element Call
✓1:1 + group via embedded Element Call ✓1:1 & group via embedded Element Call ~experimental setting, DMs only (legacy 1:1 WebRTC) ✓1:1 WebRTC; voice channels via MatrixRTC + LiveKit; E2EE experimental ✓ ~1:1 only, legacy VoIP; Linux builds only
Screenshare ✓via Element Call; fullscreen button,
independent audio mute
✓via Element Call embed ✗can view others' screenshares, cannot start one ~experimental 1:1 calls, mobile & web only ✓desktop, Android & browser; 1:1 and voice channels ✓ ✓Linux builds only (1:1 calls; XDG portal)
Noise suppressionfilter background noise from mic ✓3 tiers: off / browser-native /
on-device ML (RNNoise, Speex,
DTLN, DeepFilterNet 3),
works on self-hosted SFU
~browser-native
via Element Call
~browser-native ~WebRTC-native ~browser-native (WebRTC) ~browser-native (WebRTC noiseSuppression toggle) ✗
Push-to-Talkhold key to transmit ✓configurable hold key,
PTT badge in call bar;
M = push-to-deafen;
system-wide on Windows desktop
~hold Space while muted (Element Call built-in); no configurable key ✗ ✗ ✗ ~hold Space while muted in Element Call; no configurable key ✗
AFK auto-mutesilence mic after idle timeout ✓1–30 min timeout,
toast notification
✗ ✗ ✗ ✗ ✗ ✗
Voice channel user limitadmin-set max participants ✓per-room cap,
server-enforced
for all clients
✗ ✗ ✗ ✗ ✗ ✗
Call join/leave soundscue when others come & go ✓3 styles,
Web Audio synth
✓via Element Call (calls up to 8 people) ✓via Element Call ✗ ✓voice channels play join/leave cues for other participants ✓Element Call (calls up to 8 people) ✗
Group calls ✓via Element Call embed ✓via Element Call embed ✓via embedded Element Call ✗ ~MatrixRTC voice channels; E2EE experimental (v0.5.0) ✓ ✗1:1 only; no MatrixRTC/Element Call or Jitsi
Incoming call notificationring + Answer/Decline ✓DMs & group chats;
ring tone, auto-dismiss
✓rings for DM calls (Answer/Reject); silent prompt for group calls ✓native push ~experimental ✓ ✓ringing toast with Accept/Decline (web & desktop) ✓ringtone (selectable) + Accept/Decline bar
Core Features
Spaces ✓best-in-class sub-space nav ✓best-in-class sub-space nav ✓dedicated spaces tab,
full management
✓ ✓Discord-like categories ✓sub-spaces clunky ~limited
Threads ✓side panel + Slack-style per-thread notifications ~basic, no dedicated view ~Labs flag ✓thread view since v2.3.0 ✓ ✓ ✓since v0.11.0
Polls ✓create, vote & display;
single or multiple choice
✗not rendered (no m.poll support) ✓create, vote & end ✓added v2.3.0 ✓added v0.4.2 ✓ ✗
Voice messagesrecord & play ✓record & play, E2EE;
0.75×/1×/1.5×/2× speed
~playback only ✓record, play, variable speed,
reply with voice
✓record & play,
pause support
~playback confirmed;
recording unclear
✓ ~playback only (inline audio player); no recording
Pinned messages ✓ ✓ ✓dedicated pins view ✓pin/unpin + pinned banner ✓ ✓ ✓
Custom emoji & stickers ✓best-in-class ✓ ~ ✓ ✓bulk upload, Signal packs ~sometimes shows mxc:// URLs ✓
GIF search / picker ✓Giphy, Terminal TDS themed,
click-outside to close
✗ ✗ ✗ ✓privacy proxy,
uploads to homeserver
✗ ✗
Message search (encrypted) ✓local cache scan; load-more
buttons extend history per room
~server search only;
no E2EE support
✗ ~per-room; downloads & decrypts history client-side ✓client-side; auto-fetches +
decrypts history during search
~desktop only, not web ~local DB scan
Widgets ✓room widgets; asks before a widget may read or send in the room ✗ ✗ ✗ ✓added v0.5.0 (Widgets API, native runner on Android/Windows) ✓ ~listed in room header, open externally
UX & Extras
Multi-account ✗ ✗ ✗ ✓account switcher; multi-account push since v2.6.0 ✓ ✗ ✗CLI profiles only
Image captions(text + image as one event) ✓caption field on
image & video upload
~shows captions from other clients; cannot send ✓scrollable captions
on media (v26.04.2)
✓ ✗ ~shows captions from other clients; cannot send ~
Discord-like UI ✓best-in-class for web ✓ ✗ ✗WhatsApp/Telegram style ✓Discord-like layout ✗ ✗
Shared calendars & albums ✗ ✗ ✗ ✗ ✓unique to Commet ✗ ✗
Night Light / Blue Light Filterwarm overlay, adjustable intensity ✓5–80% intensity slider,
Settings → Appearance
✗ ✗ ✗ ✗ ✗ ✗
Animated chat backgroundsCSS-only, GPU-accelerated ✓5 animated wallpapers (rain,
stars, grid pulse, aurora,
fireflies); pause toggle
✗ ✗ ✗ ✗ ✗ ✗
Deleted message visibility(redacted events) ✓"Message deleted" with reason
if provided
~hidden by default; shown with "Show Hidden Events" ✓"Message deleted"
placeholder shown
✓shows redaction notice ✗redacted events are hidden from the timeline ✓"Message deleted"
placeholder shown
✓shows redaction notice
Location sharing ~map embed view +
static share button
~shows received locations; cannot send ✓live & static,
map rendering
~basic static ✗ ✓ ✗
Message forwarding ✓forward to any room ✗ ✓Forward action; multi-room on Android ✓ ✗ ✓ ✓
Per-message read receiptswho read each message ✓avatar pill below message,
click for list + timestamps
✓'Read Receipts' in message menu lists readers ✓avatar thumbnails ✓ ✓ ✓avatar row below message ✓
Who reactedsee who reacted with each emoji ✓hover tooltip with names;
right-click for full avatar modal
✓hover tooltip + 'View Reactions' viewer ✓long-press reaction for summary sheet ✓long-press reaction ✓ ✓hover tooltip lists reactors ✓
Edit history viewersee all prior versions of an edited message ✓click "(edited)" label → modal
with all versions + timestamps
✗label shown, not clickable ✗shows "(edited)" label only ✗ ✗ ✓ ✗only an 'Edited' marker
Custom status messageshown below username ✓emoji picker, auto-clear timer
(30 min – 7 days), 64-char limit
✗ ~emoji + text status (needs server support) ✓Set status; shown under DM header & in profile ✓shown under name in user panels/profile ~Labs; needs homeserver support (MSC4429) ✓shown next to sender name in timeline & in profile
Online presence trackingidle/away auto-detection ✓online on start, idle after 10 min,
unavailable when tab hidden,
offline on close; hide-status toggle
~shows others' status; no idle detection ~reports own presence; doesn't show others' ~basic online/offline only ~sets 'unavailable' 15s after the app loses focus; no input-idle timer ~3-min idle → away; no hide toggle ~auto: unavailable ~30 s after losing focus
Media Gallerybrowse room images/videos/files ✓right-side drawer;
Images/Videos/Files tabs
✗ ✓"Media and files" browser in room info ✓Gallery & Files tabs in chat search ✗ ~Files panel lists room attachments; no grid gallery ✗
Sidebar room filterfilter by name in real time ✓Home & DMs tabs ✗ ✓room list search + filter chips ✓search field filters chat list by name + filter chips ✗ ✗ ✗
Favorite roomsstarred section in sidebar ✓m.favourite tag, syncs
across devices
✗ ~Favourites filter chip (no separate section) ~favourite (pin) floats to top; tag filter chips ✓'Favorites' section (v0.5.0) ✓favourites section ✓'Favourites' tag in community sidebar
Invite link + QR code ✓matrix.to URL + QR code
in invite modal & room settings
✗ ~share room link; no QR ✓share invite link + QR codes ✗ ✓Share room dialog: matrix.to link + QR code ✗
Custom notification soundsper-category sound selector ✓per-category sound selector; ▶ preview ✗ ~iOS: choose alert tone (global) ✗ ✗ ~per room, not per category ✗
Notification quiet hourssilence notifs in a time window ✓silence all notifs in a time window; overnight support ✗ ✗ ✗ ✗ ✗ ✗
Room sort ordersort sidebar rooms by activity, name, or unread ✓Recent / A→Z / Unread First ✗ ~sort by activity only ~activity only (favourites first, low priority last) ~manual drag-reorder; no sort selector ✓Activity, A-Z or Unread-first ✓by importance/unread or alphabetical
Push notifications ~OS notifications while the app is open; no background push yet ~only while the tab/app is open; optional email ✓ ✓ ✓ ✓desktop ✓
Export room historydownload messages as file ✓txt/json/html, date range,
E2EE-aware
✗ ✗ ✗ ✗ ✓has export ✗
Message schedulingsend later with datetime picker ✓MSC4140, datetime picker,
cancel tray above composer
✗ ✗ ✗ ✗ ✗ ✗
Message bookmarks / saved messages ✓right-click bookmark,
sidebar panel, syncs across devices
✗ ✗ ✗ ✗ ✗ ✗
Collapsible long messagesauto-collapse >20 lines ✓"Read more" toggle,
threshold configurable
✗ ✗ ✓collapses >25 lines (configurable), Show more/less ✗ ✗ ✗
Inline GIF previewGiphy / Tenor links auto-embed ✓via homeserver proxy,
no direct CDN contact
✗ ✗ ✗ ✗ ✗ ✗
Presence avatar border ringcolored ring shows online status ✓green/yellow/red ring;
timeline, members, mentions
✗ ✗ ✗ ✗ ✗ ✗
Room emoji prefix🎮 renders larger in sidebar ✓1.15× size; emoji picker
in all name inputs
✗ ✗ ✗ ✓leading emoji becomes the room icon when no avatar ✗ ✗
Quick emoji reactions on hover1-click react, no menu needed ✓3 recent emoji in hover bar;
dismisses emoji picker
✗ ✗ ✗ ✓hover bar shows up to 4 recent reactions, 1-click ✗ ✓hover bar shows recent reactions, 1-click
In-app notification toastsTDS-styled, when window focused ✓slides in bottom-right;
4 s auto-dismiss, click to jump
✗ ✗ ✗ ✗ ✗ ✗
On-device message translationread foreign messages in your language ✓100% on-device browser AI;
works in E2EE rooms, no cloud;
Chromium desktop & Lotus app
✗ ~iOS only (Apple Translation) ✗ ✗ ✗ ✗
Encryption architecture: Element X uses the native matrix-rust-sdk with Vodozemac. FluffyChat and Commet use matrix-dart-sdk, which also wraps Vodozemac for its crypto — all three benefit from Vodozemac's stronger security track record over the older JavaScript SDK. Cinny and Element Web/Desktop currently use matrix-js-sdk; Element is actively migrating to the Rust SDK. Clients using Vodozemac were not affected by historical js-sdk vulnerabilities.
✓ Full support ~ Partial / experimental ✗ Not supported

Server Details

Access
Invite-only
Max Upload
200 MB / file
Message History
Kept indefinitely
Media Retention
3 yr local · 1 yr remote
Federation
Fully federated
Minimum Age
13+ (COPPA)
No ads or tracking No data sold E2EE — server cannot read encrypted rooms

Questions or need a registration token?

Reach out to @jared:matrix.lotusguild.org