Skip to content

feat: add site-sonar page — submarine radar content discovery#8

Open
arc-butler wants to merge 3 commits into
ARC345:mainfrom
arc-butler:feat/site-sonar
Open

feat: add site-sonar page — submarine radar content discovery#8
arc-butler wants to merge 3 commits into
ARC345:mainfrom
arc-butler:feat/site-sonar

Conversation

@arc-butler

Copy link
Copy Markdown
Contributor

What

A retro submarine-style radar/sonar screen that sweeps through all site content (posts, projects, books) as glowing blips on a rotating radar display.

How it works

  • Positioning: Each piece of content is a blip on the radar. Its angle is deterministically derived from the title, and its distance from center reflects recency (newer = closer).
  • Sweep: A rotating radar beam sweeps clockwise, illuminating blips as it passes over them. Blips fade after ~5 seconds, then reappear on the next pass — just like real maritime radar.
  • Interaction: Hover reveals the title and type, click navigates to the item.
  • Zero dependencies: Pure vanilla Canvas JS. No libraries, no API keys.
  • Data: Injected via Jekyll Liquid into window.__sonarData, so the radar is always up to date with site content.
  • Theme-aware: Tooltip and legend use theme CSS variables.

Files changed

  • _pages/sonar.md — New page with frontmatter, embedded CSS, Liquid data injection, and JS include
  • assets/js/site-sonar.js — Vanilla JS sonar visualization (~480 lines)

Why

Follows the existing site pattern of useful data presented through an absurd lens: Travel Map (geographic map → Leaflet), Vital Signs (site analytics → hospital monitor), Game of Life (site data → cellular automata), Site Sonar (content discovery → submarine radar).

Weird: WW2 submarine radar on an academic homepage.
Sensible: Visual content discovery organized by recency and type.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant