Music/build.py parses *-music.md files and generates collection pages supporting
YouTube video embeds (lazy IntersectionObserver) and FileBrowser audio cards with
floating media player (prev/next/auto-advance). Music star node wired in index.html.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Each panel now has a full-width '→ OPEN FULL PLAYLIST ON YOUTUBE' link
below the embed — resolves YouTube showing single video instead of playlist
- Link inherits panel accent color, inverts on hover
- Renamed TheLastCinema-watchlist.md → LastCinema-watchlist.md so build.py
generates lastcinema.html (matching hub link)
- Regenerated all 5 collection pages
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- watchlists-hub.html: comic book panel grid, neon-teal/green/toucan palette,
Rambla-only type hierarchy, CSS stagger entrance, wired to star map
- 5 collection pages built from *-watchlist.md sources via build.py:
contentaddictionarchive, analogfrontier, culturaldecay,
soundscapeanomalies, lastcinema
- build.py: parses MD files, generates self-contained HTML pages,
updates hub subtitle with live counts
- index.html: Watchlists star node wired to Watchlists/watchlists-hub.html
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Desktop: two nav buttons side by side (unchanged).
Mobile: collapses to a ☰ Menu toggle, dropdown reveals both links.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove FileBrowser API fetch, async lightbox logic, and per-image
download button. Add a single folder share link per collection page
next to Back to Hub. Lightbox is now fully synchronous.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
align-items: center clips content at both ends when taller than viewport.
Switch to align-items: flex-start + overflow-y: auto so gate scrolls from top.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- SkyFishing: Cormorant Garamond → Estonia (display/headings), IBM Plex Mono → Share Tech Mono
- Remove escape-annotated-minimalist.html (duplicate of v2); rename Escape II → Escape in nav
- .gitignore: unblock Writings/life_in_alexandra.html (large but the one and only exception)
- life_in_alexandra.html now tracked
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Coolify serves from repo root — index.html at root means
spaces.exopraxist.org/ works directly. Writings hrefs updated
from ../Writings/ to Writings/ accordingly.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>