{
"reviewed": "2026-09-23",
"clients": [
{
"name": "Lotus Chat",
"sub": "chat.lotusguild.org
Our Cinny fork"
},
{
"name": "Cinny",
"sub": "cinny.in
Official"
},
{
"name": "Element X",
"sub": "iOS & Android"
},
{
"name": "FluffyChat",
"sub": "All platforms"
},
{
"name": "Commet",
"sub": "Android / Win / macOS / Linux"
},
{
"name": "Element",
"sub": "Web & Desktop"
},
{
"name": "Nheko",
"sub": "Desktop only"
}
],
"sections": [
{
"title": "Platform",
"rows": [
{
"feature": "iOS",
"cells": [
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Android",
"cells": [
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Desktop app",
"cells": [
{
"mark": "yes"
},
{
"mark": "yes",
"note": "Cinny Desktop"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "Win, macOS & Linux"
},
{
"mark": "yes"
},
{
"mark": "yes"
}
]
},
{
"feature": "Web browser",
"cells": [
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
},
{
"feature": "Performance",
"cells": [
{
"text": "Light"
},
{
"text": "Light"
},
{
"text": "Very fast",
"note": "Sliding Sync"
},
{
"text": "Moderate"
},
{
"text": "Moderate"
},
{
"text": "Heavy",
"note": "Electron / JS"
},
{
"text": "Light",
"note": "Native C++"
}
]
}
]
},
{
"title": "Desktop App",
"rows": [
{
"feature": "Native rich notifications (click→open, inline reply)",
"cells": [
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "part"
},
{
"mark": "no"
}
]
},
{
"feature": "Windows Jump List (recent rooms)",
"cells": [
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Taskbar + volume-flyout call controls",
"cells": [
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Focus Assist → auto Do-Not-Disturb",
"cells": [
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Stay awake during calls",
"cells": [
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "part"
},
{
"mark": "no"
}
]
},
{
"feature": "Recursive folder drag-drop upload",
"cells": [
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
}
]
},
{
"title": "Security & Encryption",
"rows": [
{
"feature": "E2EE",
"cells": [
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
}
]
},
{
"feature": "Vodozemac encryptionstronger crypto track record",
"cells": [
{
"mark": "no",
"note": "js-sdk"
},
{
"mark": "no",
"note": "js-sdk"
},
{
"mark": "yes",
"note": "Rust SDK"
},
{
"mark": "yes",
"note": "dart-sdk"
},
{
"mark": "yes",
"note": "dart-sdk"
},
{
"mark": "no",
"note": "js-sdk, migrating"
},
{
"mark": "no"
}
]
},
{
"feature": "Device verification",
"cells": [
{
"mark": "yes",
"note": "SAS emoji, cross-client requests show inline card"
},
{
"mark": "part",
"note": "cross-client requests
may show unsupported"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
}
]
}
]
},
{
"title": "Voice & Video",
"rows": [
{
"feature": "Voice & video calls",
"cells": [
{
"mark": "yes",
"note": "rooms & DMs, group calls,
screenshare via Element Call"
},
{
"mark": "part",
"note": "Element Call embed;
no ring notification"
},
{
"mark": "yes",
"note": "MatrixRTC"
},
{
"mark": "part",
"note": "experimental, varies
by homeserver"
},
{
"mark": "part",
"note": "1:1 + group,
no E2EE voice rooms"
},
{
"mark": "yes"
},
{
"mark": "yes"
}
]
},
{
"feature": "Screenshare",
"cells": [
{
"mark": "yes",
"note": "via Element Call; fullscreen button,
independent audio mute"
},
{
"mark": "yes",
"note": "via Element Call embed"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "XDG portals & native"
}
]
},
{
"feature": "Noise suppressionfilter background noise from mic",
"cells": [
{
"mark": "yes",
"note": "3 tiers: off / browser-native /
on-device ML (RNNoise, Speex,
DTLN, DeepFilterNet 3),
works on self-hosted SFU"
},
{
"mark": "part",
"note": "browser-native
via Element Call"
},
{
"mark": "part",
"note": "browser-native"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "browser-native;
ML only on LiveKit Cloud"
},
{
"mark": "no"
}
]
},
{
"feature": "Push-to-Talkhold key to transmit",
"cells": [
{
"mark": "yes",
"note": "configurable hold key,
PTT badge in call bar;
M = push-to-deafen;
system-wide on Windows desktop"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "AFK auto-mutesilence mic after idle timeout",
"cells": [
{
"mark": "yes",
"note": "1–30 min timeout,
toast notification"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Voice channel user limitadmin-set max participants",
"cells": [
{
"mark": "yes",
"note": "per-room cap,
server-enforced
for all clients"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Call join/leave soundscue when others come & go",
"cells": [
{
"mark": "yes",
"note": "3 styles,
Web Audio synth"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Group calls",
"cells": [
{
"mark": "yes",
"note": "via Element Call embed"
},
{
"mark": "yes",
"note": "via Element Call embed"
},
{
"mark": "yes",
"note": "MatrixRTC"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "no E2EE voice rooms"
},
{
"mark": "yes"
},
{
"mark": "part",
"note": "partial"
}
]
},
{
"feature": "Incoming call notificationring + Answer/Decline",
"cells": [
{
"mark": "yes",
"note": "DMs & group chats;
ring tone, auto-dismiss"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "native push"
},
{
"mark": "part",
"note": "experimental"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "desktop"
},
{
"mark": "part",
"note": "partial"
}
]
}
]
},
{
"title": "Core Features",
"rows": [
{
"feature": "Spaces",
"cells": [
{
"mark": "yes",
"note": "best-in-class sub-space nav"
},
{
"mark": "yes",
"note": "best-in-class sub-space nav"
},
{
"mark": "yes",
"note": "dedicated spaces tab,
full management"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "Discord-like categories"
},
{
"mark": "yes",
"note": "sub-spaces clunky"
},
{
"mark": "part",
"note": "limited"
}
]
},
{
"feature": "Threads",
"cells": [
{
"mark": "yes",
"note": "side panel + Slack-style per-thread notifications"
},
{
"mark": "part",
"note": "basic, no dedicated view"
},
{
"mark": "part",
"note": "Labs flag"
},
{
"mark": "no",
"note": "shows as regular messages"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
},
{
"feature": "Polls",
"cells": [
{
"mark": "yes",
"note": "create, vote & display;
single or multiple choice"
},
{
"mark": "part",
"note": "display only"
},
{
"mark": "yes",
"note": "create, vote & end"
},
{
"mark": "yes",
"note": "added v2.3.0"
},
{
"mark": "yes",
"note": "added v0.4.2"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
},
{
"feature": "Voice messagesrecord & play",
"cells": [
{
"mark": "yes",
"note": "record & play, E2EE;
0.75×/1×/1.5×/2× speed"
},
{
"mark": "part",
"note": "playback only"
},
{
"mark": "yes",
"note": "record, play, variable speed,
reply with voice"
},
{
"mark": "yes",
"note": "record & play,
pause support"
},
{
"mark": "part",
"note": "playback confirmed;
recording unclear"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
},
{
"feature": "Pinned messages",
"cells": [
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "dedicated pins view"
},
{
"mark": "part",
"note": "view only"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
}
]
},
{
"feature": "Custom emoji & stickers",
"cells": [
{
"mark": "yes",
"note": "best-in-class"
},
{
"mark": "yes"
},
{
"mark": "part"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "bulk upload, Signal packs"
},
{
"mark": "part",
"note": "sometimes shows mxc:// URLs"
},
{
"mark": "yes"
}
]
},
{
"feature": "GIF search / picker",
"cells": [
{
"mark": "yes",
"note": "Giphy, Terminal TDS themed,
click-outside to close"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "privacy proxy,
uploads to homeserver"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Message search (encrypted)",
"cells": [
{
"mark": "yes",
"note": "local cache scan; load-more
buttons extend history per room"
},
{
"mark": "part",
"note": "server search only;
no E2EE support"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "cache scan only"
},
{
"mark": "yes",
"note": "client-side; auto-fetches +
decrypts history during search"
},
{
"mark": "part",
"note": "desktop only, not web"
},
{
"mark": "part",
"note": "local DB scan"
}
]
},
{
"feature": "Widgets",
"cells": [
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
}
]
},
{
"title": "UX & Extras",
"rows": [
{
"feature": "Multi-account",
"cells": [
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "supported but clunky"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no",
"note": "CLI profiles only"
}
]
},
{
"feature": "Image captions(text + image as one event)",
"cells": [
{
"mark": "yes",
"note": "caption field on
image & video upload"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "scrollable captions
on media (v26.04.2)"
},
{
"mark": "yes",
"note": "unique feature"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "part"
}
]
},
{
"feature": "Discord-like UI",
"cells": [
{
"mark": "yes",
"note": "best-in-class for web"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no",
"note": "WhatsApp/Telegram style"
},
{
"mark": "yes",
"note": "most Discord-like overall"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Shared calendars & albums",
"cells": [
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "unique to Commet"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Night Light / Blue Light Filterwarm overlay, adjustable intensity",
"cells": [
{
"mark": "yes",
"note": "5–80% intensity slider,
Settings → Appearance"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Animated chat backgroundsCSS-only, GPU-accelerated",
"cells": [
{
"mark": "yes",
"note": "5 animated wallpapers (rain,
stars, grid pulse, aurora,
fireflies); pause toggle"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Deleted message visibility(redacted events)",
"cells": [
{
"mark": "yes",
"note": "\"Message deleted\" with reason
if provided"
},
{
"mark": "no",
"note": "redacted messages hidden"
},
{
"mark": "yes",
"note": "\"Message deleted\"
placeholder shown"
},
{
"mark": "yes",
"note": "shows redaction notice"
},
{
"mark": "yes",
"note": "shows redaction notice"
},
{
"mark": "yes",
"note": "\"Message deleted\"
placeholder shown"
},
{
"mark": "yes",
"note": "shows redaction notice"
}
]
},
{
"feature": "Location sharing",
"cells": [
{
"mark": "part",
"note": "map embed view +
static share button"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "live & static,
map rendering"
},
{
"mark": "part",
"note": "basic static"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
},
{
"feature": "Message forwarding",
"cells": [
{
"mark": "yes",
"note": "forward to any room"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "via share menu"
},
{
"mark": "yes"
},
{
"mark": "part"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
},
{
"feature": "Per-message read receiptswho read each message",
"cells": [
{
"mark": "yes",
"note": "avatar pill below message,
click for list + timestamps"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "avatar thumbnails"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "avatar row below message"
},
{
"mark": "yes"
}
]
},
{
"feature": "Who reactedsee who reacted with each emoji",
"cells": [
{
"mark": "yes",
"note": "hover tooltip with names;
right-click for full avatar modal"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "tap reaction chip"
},
{
"mark": "part"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "tooltip + click for list"
},
{
"mark": "yes"
}
]
},
{
"feature": "Edit history viewersee all prior versions of an edited message",
"cells": [
{
"mark": "yes",
"note": "click \"(edited)\" label → modal
with all versions + timestamps"
},
{
"mark": "no",
"note": "label shown, not clickable"
},
{
"mark": "yes"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "yes"
}
]
},
{
"feature": "Custom status messageshown below username",
"cells": [
{
"mark": "yes",
"note": "emoji picker, auto-clear timer
(30 min – 7 days), 64-char limit"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "via profile settings"
},
{
"mark": "no"
}
]
},
{
"feature": "Online presence trackingidle/away auto-detection",
"cells": [
{
"mark": "yes",
"note": "online on start, idle after 10 min,
unavailable when tab hidden,
offline on close; hide-status toggle"
},
{
"mark": "part",
"note": "manual AFK only; auto idle
detection PR open, unmerged"
},
{
"mark": "part",
"note": "basic online/offline only"
},
{
"mark": "part",
"note": "basic online/offline only"
},
{
"mark": "part",
"note": "inactivity monitor shipped Oct 2025;
no tab/close detection confirmed"
},
{
"mark": "part",
"note": "3-min idle timer (shipped Nov 2023);
no tab detection, no offline on close,
no user-facing hide toggle"
},
{
"mark": "part",
"note": "basic online/offline only"
}
]
},
{
"feature": "Media Gallerybrowse room images/videos/files",
"cells": [
{
"mark": "yes",
"note": "right-side drawer;
Images/Videos/Files tabs"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Sidebar room filterfilter by name in real time",
"cells": [
{
"mark": "yes",
"note": "Home & DMs tabs"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Favorite roomsstarred section in sidebar",
"cells": [
{
"mark": "yes",
"note": "m.favourite tag, syncs
across devices"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "favourites section"
},
{
"mark": "no"
}
]
},
{
"feature": "Invite link + QR code",
"cells": [
{
"mark": "yes",
"note": "matrix.to URL + QR code
in invite modal & room settings"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Custom notification soundsper-category sound selector",
"cells": [
{
"mark": "yes",
"note": "per-category sound selector; ▶ preview"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Notification quiet hourssilence notifs in a time window",
"cells": [
{
"mark": "yes",
"note": "silence all notifs in a time window; overnight support"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Room sort ordersort sidebar rooms by activity, name, or unread",
"cells": [
{
"mark": "yes",
"note": "Recent / A→Z / Unread First"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "sort by activity only"
},
{
"mark": "part",
"note": "alphabetical only"
},
{
"mark": "yes",
"note": "multiple sort options"
},
{
"mark": "part",
"note": "limited"
},
{
"mark": "no"
}
]
},
{
"feature": "Push notifications",
"cells": [
{
"mark": "part",
"note": "web push only"
},
{
"mark": "part",
"note": "web push only"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes"
},
{
"mark": "yes",
"note": "desktop"
},
{
"mark": "yes"
}
]
},
{
"feature": "Export room historydownload messages as file",
"cells": [
{
"mark": "yes",
"note": "txt/json/html, date range,
E2EE-aware"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes",
"note": "has export"
},
{
"mark": "no"
}
]
},
{
"feature": "Message schedulingsend later with datetime picker",
"cells": [
{
"mark": "yes",
"note": "MSC4140, datetime picker,
cancel tray above composer"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "partial / labs"
},
{
"mark": "no"
}
]
},
{
"feature": "Message bookmarks / saved messages",
"cells": [
{
"mark": "yes",
"note": "right-click bookmark,
sidebar panel, syncs across devices"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "yes"
},
{
"mark": "no"
}
]
},
{
"feature": "Collapsible long messagesauto-collapse >20 lines",
"cells": [
{
"mark": "yes",
"note": "\"Read more\" toggle,
threshold configurable"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Inline GIF previewGiphy / Tenor links auto-embed",
"cells": [
{
"mark": "yes",
"note": "via homeserver proxy,
no direct CDN contact"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Presence avatar border ringcolored ring shows online status",
"cells": [
{
"mark": "yes",
"note": "green/yellow/red ring;
timeline, members, mentions"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Room emoji prefix🎮 renders larger in sidebar",
"cells": [
{
"mark": "yes",
"note": "1.15× size; emoji picker
in all name inputs"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "Quick emoji reactions on hover1-click react, no menu needed",
"cells": [
{
"mark": "yes",
"note": "3 recent emoji in hover bar;
dismisses emoji picker"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "part",
"note": "hover bar, no recents"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "In-app notification toastsTDS-styled, when window focused",
"cells": [
{
"mark": "yes",
"note": "slides in bottom-right;
4 s auto-dismiss, click to jump"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
},
{
"feature": "On-device message translationread foreign messages in your language",
"cells": [
{
"mark": "yes",
"note": "100% on-device browser AI;
works in E2EE rooms, no cloud;
Chromium desktop & Lotus app"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
},
{
"mark": "no"
}
]
}
]
}
]
}