skills/retrofuturism-web-design/SKILL.md
Web design inspired by retrofuturism — the future as imagined by the past. Covers Atomic Age/Googie, Raygun Gothic, Cassette Futurism (Alien terminals), Y2K chrome/iridescent, Solarpunk eco-optimism, and Fallout/BioShock Art Deco. Each sub-genre with palettes, fonts, CSS, and layout patterns. Activate on 'retrofuturism', 'retro-futuristic', 'cassette futurism', 'Y2K aesthetic', 'Googie', 'Raygun Gothic', 'solarpunk', 'Pip-Boy', 'FUI', 'fantasy UI', 'sci-fi terminal', 'atompunk', 'space age', 'retro sci-fi'. NOT for vaporwave/glassmorphism (use vaporwave-glassomorphic-ui-designer), Windows retro (use windows-95-web-designer), general retro web (use web-design-expert).
npx skillsauth add curiositech/windags-skills retrofuturism-web-designInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Creates web experiences channeling the future as imagined by the past — nostalgia for futures that never were. Translates six distinct retrofuturist sub-genres into production CSS, layouts, and interaction patterns.
Brief mentions → Route to
├─ "1950s space age" → Atomic Age/Googie
├─ "Art Deco rockets" → Raygun Gothic
├─ "terminal screens" → Cassette Futurism
├─ "chrome bubble" → Y2K Futurism
├─ "green tech optimism" → Solarpunk
└─ "Pip-Boy/Fallout" → Fallout Deco
If Cassette Futurism:
├─ Mobile: Stack terminals vertically, 16px spacing
├─ Tablet: 2-column grid, left=nav, right=content
└─ Desktop: 3-column grid with sidebar terminals
If Y2K/Atomic Age:
├─ Mobile: Bubble cards, centered stack
├─ Tablet: Masonry grid with asymmetric shapes
└─ Desktop: Flexbox with boomerang/bubble overlays
If Raygun Gothic/Solarpunk:
├─ Mobile: Full-width panels, vertical rhythm
├─ Tablet/Desktop: CSS Grid, 12-column with golden ratio
└─ Emphasis on vertical lines and organic curves
If scan lines/CRT effects:
├─ Mobile: Disable scan lines (performance)
├─ Tablet: Light scan lines (2px spacing)
└─ Desktop: Full CRT effect (1px spacing)
If chrome/metallic gradients:
├─ Mobile: Flat colors only
├─ Tablet: Simple 2-stop gradients
└─ Desktop: Complex multi-stop chrome effects
User Experience Level:
├─ First visit: Full boot sequence (3s max)
├─ Return visit: Skip to steady state
├─ `prefers-reduced-motion`: Static only
└─ Mobile/slow connection: Reduce all animations 50%
Symptom: Every element glows, blinks, or shimmers simultaneously Detection: More than 3 animated elements visible at once Fix: Tone down intensity 20%, limit animations to hero + 1 accent element
Symptom: Art Deco serif (Raygun Gothic) mixed with tech mono (Cassette) Detection: Two different sub-genre fonts in same viewport Fix: Pick ONE sub-genre or create explicit transition boundaries
Symptom: Gradients everywhere cause visual fatigue and performance lag Detection: >5 complex gradients on single page, FPS drops below 30 Fix: Limit chrome to accent elements only, use flat colors for backgrounds
Symptom: Amber CRT text at 12px, no focus indicators Detection: Body text contrast <4.5:1, scan lines interfere with reading Fix: Increase font size, make overlays subtle, add high-contrast mode toggle
Symptom: Mixing Y2K bubbles with Fallout steel panels randomly Detection: Visual elements from 3+ different decades in same section Fix: Define transition zones or stick to single sub-genre per page
Brief: "Make our DevOps dashboard look like the Alien computer terminals"
Decision Process:
Layout Strategy:
pointer-events: noneTrade-offs Made:
Quality Gates Hit:
Brief: "Early 2000s iMac aesthetic for our bubble tea brand"
Decision Process:
Implementation:
Novice vs Expert Catches:
prefers-reduced-motion media querypointer-events: noneRoute to other skills:
Context boundaries:
tools
Building resilient distributed systems with circuit breakers, retries with full-jitter exponential backoff, retry budgets (per-request 3-attempt + per-client 10% ratio per Google SRE), deadline propagation, and the cascading-failure math (4 layers × 3 retries = 64x amplification). Grounded in Resilience4j, Microsoft Cloud Patterns, AWS Architecture Blog (Marc Brooker), and Google SRE Book.
testing
Designing HTTP cache headers that work correctly across browsers, CDNs, and shared proxies — `Cache-Control` directives per RFC 9111, `stale-while-revalidate` and `stale-if-error` per RFC 5861, the Vary header for varying responses, and surrogate keys for tag-based purging. Grounded in IETF RFCs and Cloudflare/Fastly docs.
development
Use when designing or fixing a Content Security Policy on a real site, choosing between nonce-based and hash-based CSP, adding strict-dynamic, debugging "Refused to execute inline script" errors, deploying CSP in report-only mode first, configuring report-to / report-uri, or auditing an existing policy for unsafe-inline / unsafe-eval / wildcards. Triggers: "CSP blocks legitimate inline script", strict-dynamic, nonce-{RANDOM}, sha256-{HASH}, object-src none, base-uri none, frame-ancestors, Trusted Types, X-Content-Security-Policy obsolete, report-only vs enforced. NOT for general HTTP security headers (HSTS, COOP/COEP), Trusted Types deep dive, CORS configuration, or building a WAF.
tools
Choosing and operating an HTTP API versioning strategy that doesn't break clients — Stripe's date-based pinned versions, the Deprecation/Sunset header pair (RFC 9745 + RFC 8594), URI vs header vs media-type approaches, and the version-transformer pattern. Grounded in Stripe's published architecture and IETF RFCs.