Lint / Shell (shellcheck) (push) Successful in 18s
Lint / JS (eslint) (push) Successful in 11s
Lint / Landing page is rendered (matrix (push) Successful in 6s
Lint / Python (ruff) (push) Successful in 7s
Lint / Python deps (pip-audit) (push) Successful in 1m5s
Lint / Secret scan (gitleaks) (push) Successful in 10s
- The ~1,800-word "our fork adds" paragraph becomes seven titled groups (Calls & Voice, Messaging, Media & Links, Privacy & Security, Look & Feel, Desktop App, Rooms & Moderation), one short line per feature, with a link to LOTUS_FEATURES.md instead of duplicating the changelog. - The comparison table lives in landing/data/comparison.json (converted losslessly: all 71 rows render with identical cell text) and the feature groups in landing/data/features.json. landing/build.py renders them between <!-- BEGIN/END --> markers; everything else stays hand-edited. - CSS moved to landing/style.css and inlined by build.py (the LXC 139 deploy copies index.html only, so a linked stylesheet wouldn't ship). The fork paragraph's 16 repeated inline styles are gone. - Visible "Client comparison last reviewed <date>" stamp from comparison.json, replacing the stale "June 2026 (latest)" title. - CI: `landing-fresh` fails if index.html doesn't match its sources. Page is ~1,850 px shorter on desktop and ~2,500 px on phones; no horizontal overflow at 1280 px or Pixel 7. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PPmy3tPq869XDW4njjVaKA
73 lines
3.4 KiB
JSON
73 lines
3.4 KiB
JSON
[
|
|
{
|
|
"title": "Calls & Voice",
|
|
"items": [
|
|
"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)",
|
|
"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"
|
|
]
|
|
},
|
|
{
|
|
"title": "Messaging",
|
|
"items": [
|
|
"Threads with a side panel, unread chips and per-thread notification overrides",
|
|
"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)",
|
|
"On-device message translation: text never leaves your machine, works in encrypted rooms"
|
|
]
|
|
},
|
|
{
|
|
"title": "Media & Links",
|
|
"items": [
|
|
"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",
|
|
"Media gallery for every image, video and file shared in a room",
|
|
"Optional image compression, folder drag-and-drop upload"
|
|
]
|
|
},
|
|
{
|
|
"title": "Privacy & Security",
|
|
"items": [
|
|
"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"
|
|
]
|
|
},
|
|
{
|
|
"title": "Look & Feel",
|
|
"items": [
|
|
"Lotus Terminal theme, night-light filter, glassmorphism sidebar",
|
|
"Animated chat backgrounds and 11 seasonal overlays (all respect reduced motion)",
|
|
"99 animated avatar decorations, 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)"
|
|
]
|
|
},
|
|
{
|
|
"title": "Desktop App",
|
|
"items": [
|
|
"Windows, macOS and Linux (Tauri)",
|
|
"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"
|
|
]
|
|
},
|
|
{
|
|
"title": "Rooms & Moderation",
|
|
"items": [
|
|
"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"
|
|
]
|
|
}
|
|
]
|