Landing page overhaul: replace the 4,000-word feature paragraph + duplicated comparison table with structured, single-source sections #11

Open
opened 2026-09-17 23:30:17 -04:00 by jared · 0 comments
Owner

landing/index.html (1,440 lines, deployed to LXC 139 on push) has grown by accretion and is hard to maintain:

  • The "what our fork adds" copy is one ~4,000-word paragraph (<p class="also-available">, line ~558) with no structure — every feature since June 2026 was appended as another run-on sentence. Nobody reads it; it is also the only place the fork's features are described on the site.
  • The feature-comparison table (Platform / Security / Desktop / Calling / Core / UX, ~700 lines) duplicates much of that paragraph and has to be edited in two places per feature.
  • Inline styles (style="font-size:0.8em;color:#e88;" repeated ~30×), a 480-line <style> block, and inline JS all live in the single file.
  • The "Other clients" cards and the comparison columns are a point-in-time snapshot (client versions, "Calls Experimental" tags) with no date shown, so it silently goes stale.

Overhaul goals (decide scope before starting):

  1. Split the fork feature blurb into short titled sections or a card grid (Calls · Messaging · Privacy · Desktop · Mobile), each 1–2 lines, with a "full changelog" link to LOTUS_FEATURES.md on Gitea — stop duplicating the changelog here.
  2. One source of truth for the comparison table (e.g. a small JSON + a render script, or generate it from a Markdown table at deploy time) so features are added once.
  3. Move CSS to landing/style.css, drop the repeated inline styles, keep the TDS look (--lt-* tokens per the TDS Design Law).
  4. Stamp a visible "last reviewed" date on the client comparison; add a checklist for re-verifying the other clients' columns.
  5. Keep it a single static deploy (no build step on LXC 139) unless (2) needs one — if so, generate in CI and commit the output.

Not urgent; the September 2026 update (landing: commit on main) just appended to the paragraph again, which is the pattern this issue exists to end.

`landing/index.html` (1,440 lines, deployed to LXC 139 on push) has grown by accretion and is hard to maintain: - The "what our fork adds" copy is **one ~4,000-word paragraph** (`<p class="also-available">`, line ~558) with no structure — every feature since June 2026 was appended as another run-on sentence. Nobody reads it; it is also the only place the fork's features are described on the site. - The feature-comparison table (Platform / Security / Desktop / Calling / Core / UX, ~700 lines) duplicates much of that paragraph and has to be edited in two places per feature. - Inline styles (`style="font-size:0.8em;color:#e88;"` repeated ~30×), a 480-line `<style>` block, and inline JS all live in the single file. - The "Other clients" cards and the comparison columns are a point-in-time snapshot (client versions, "Calls Experimental" tags) with no date shown, so it silently goes stale. **Overhaul goals (decide scope before starting):** 1. Split the fork feature blurb into short titled sections or a card grid (Calls · Messaging · Privacy · Desktop · Mobile), each 1–2 lines, with a "full changelog" link to `LOTUS_FEATURES.md` on Gitea — stop duplicating the changelog here. 2. One source of truth for the comparison table (e.g. a small JSON + a render script, or generate it from a Markdown table at deploy time) so features are added once. 3. Move CSS to `landing/style.css`, drop the repeated inline styles, keep the TDS look (`--lt-*` tokens per the TDS Design Law). 4. Stamp a visible "last reviewed" date on the client comparison; add a checklist for re-verifying the other clients' columns. 5. Keep it a single static deploy (no build step on LXC 139) unless (2) needs one — if so, generate in CI and commit the output. Not urgent; the September 2026 update (`landing:` commit on main) just appended to the paragraph again, which is the pattern this issue exists to end.
jared added the enhancementpriority: lowlandingux labels 2026-09-17 23:30:17 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: LotusGuild/matrix#11