From 6642aaa16a008db53945354f7d642fca5d9beff6 Mon Sep 17 00:00:00 2001 From: Qa'id Jacobs Date: Sun, 15 Mar 2026 22:52:55 +0100 Subject: [PATCH 1/7] Update landing page with network topology animation and app gallery Replace hero menu bar mock with animated SVG network topology widget, move screenshots to dedicated App section with uniform height grid, remove inline screenshots from features, update footer attribution. Co-Authored-By: Claude Opus 4.6 (1M context) --- docs/index.html | 202 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 168 insertions(+), 34 deletions(-) diff --git a/docs/index.html b/docs/index.html index ec3a92f..d9f7667 100644 --- a/docs/index.html +++ b/docs/index.html @@ -16,6 +16,8 @@ --cta-color: #aaa; --cta-hover: #f0f0f0; --cta-border: #444; --cta-border-hover: #777; --link-color: #888; --link-hover: #ccc; --link-border: #444; --link-border-hover: #777; --dl-color: #4e7fff; --ul-color: #34c759; + --node-color: rgba(255,255,255,0.5); --edge-color: rgba(255,255,255,0.08); + --pulse-dl: rgba(78,127,255,0.6); --pulse-ul: rgba(52,199,89,0.6); color-scheme: dark; } @@ -27,6 +29,8 @@ --scanline: rgba(0,0,0,0.006); --note-num: #e8e6e0; --cta-color: #555; --cta-hover: #111; --cta-border: #bbb; --cta-border-hover: #666; --link-color: #666; --link-hover: #222; --link-border: #bbb; --link-border-hover: #666; + --node-color: rgba(0,0,0,0.35); --edge-color: rgba(0,0,0,0.06); + --pulse-dl: rgba(78,127,255,0.5); --pulse-ul: rgba(52,199,89,0.5); color-scheme: light; } @@ -39,6 +43,8 @@ --scanline: rgba(0,0,0,0.006); --note-num: #e8e6e0; --cta-color: #555; --cta-hover: #111; --cta-border: #bbb; --cta-border-hover: #666; --link-color: #666; --link-hover: #222; --link-border: #bbb; --link-border-hover: #666; + --node-color: rgba(0,0,0,0.35); --edge-color: rgba(0,0,0,0.06); + --pulse-dl: rgba(78,127,255,0.5); --pulse-ul: rgba(52,199,89,0.5); color-scheme: light; } } @@ -87,7 +93,7 @@ .divider { border: none; border-top: 1px solid var(--border); margin: 0; transition: border-color 0.3s; } /* HERO */ - .hero { padding-top: 100px; padding-bottom: 80px; } + .hero { padding-top: 100px; padding-bottom: 40px; } .hero-overline { font-size: 14px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text-faint); margin-bottom: 20px; } .hero h1 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(52px, 9vw, 112px); @@ -96,15 +102,13 @@ .hero h1 em { font-weight: 400; font-style: italic; color: var(--text-muted); } .hero-desc { font-size: 20px; color: var(--text-muted); max-width: 520px; line-height: 1.6; margin-bottom: 44px; } - /* Menu bar mock */ - .menubar-mock { - display: inline-flex; align-items: center; gap: 12px; - padding: 8px 16px; background: rgba(20,20,20,0.8); border: 1px solid rgba(255,255,255,0.07); - border-radius: 12px; backdrop-filter: blur(20px); font-family: 'SF Mono', Menlo, monospace; - font-size: 14px; color: var(--text-secondary); transition: background 0.3s, border-color 0.3s; + /* Network topology widget */ + .topology-widget { + position: relative; width: 100%; max-width: 600px; height: 200px; + border: 1px solid var(--border); border-radius: 12px; + background: var(--code-bg); overflow: hidden; transition: background 0.3s, border-color 0.3s; } - .mock-dl { color: var(--dl-color); } - .mock-ul { color: var(--ul-color); } + .topology-widget svg { width: 100%; height: 100%; } /* TRACKLIST */ .tracklist { padding: 72px 0; } @@ -116,6 +120,23 @@ .track-desc { font-size: 17px; color: var(--text-muted); line-height: 1.55; } .track-duration { margin-left: auto; font-size: 16px; color: var(--text-ghost); font-variant-numeric: tabular-nums; flex-shrink: 0; padding-left: 16px; } + /* APP SCREENSHOTS */ + .app-section { padding: 72px 0; } + .app-header { font-size: 14px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text-faint); margin-bottom: 36px; } + .app-grid { + display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; + align-items: start; + } + .app-screenshot-card { display: flex; flex-direction: column; gap: 10px; } + .app-screenshot-card img { + width: 100%; height: 280px; object-fit: cover; object-position: top; + border-radius: 8px; border: 1px solid var(--border); + box-shadow: 0 4px 16px rgba(0,0,0,0.2); transition: border-color 0.3s; + } + .app-screenshot-card span { + font-size: 14px; color: var(--text-faint); letter-spacing: 0.02em; + } + /* LINER NOTES */ .liner-notes { padding: 72px 0; } .liner-notes-header { font-size: 14px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text-faint); margin-bottom: 36px; } @@ -175,15 +196,15 @@ .track { flex-wrap: wrap; gap: 4px 16px; } .track-title { min-width: unset; } .track-duration { margin-left: 48px; } + .app-grid { grid-template-columns: repeat(2, 1fr); } + .app-screenshot-card img { height: 220px; } } - .screenshot-showcase { padding: 0 0 60px; text-align: center; } - .screenshot-img { max-width: 600px; width: 100%; border-radius: 12px; border: 1px solid var(--border); box-shadow: 0 8px 32px rgba(0,0,0,0.3); } - .feature-screenshot { max-width: 400px; width: 100%; border-radius: 8px; border: 1px solid var(--border); margin-top: 16px; box-shadow: 0 4px 16px rgba(0,0,0,0.2); } - @media (max-width: 768px) { .screenshot-img { max-width: 100%; } .feature-screenshot { max-width: 100%; } } @media (max-width: 480px) { .hero h1 { font-size: 44px; } .track-title { font-size: 19px; } .privacy-grid { grid-template-columns: 1fr 1fr; } + .app-grid { grid-template-columns: 1fr; } + .app-screenshot-card img { height: 260px; } footer { flex-direction: column; gap: 8px; text-align: center; } } @@ -206,25 +227,20 @@
macOS Network Monitor — Open Source

Spook

See what's talking on your Mac. Real-time traffic monitoring from your menu bar. Per-app breakdown, connection details, and history graphs.

-