- Migrate landing page and dashboard from Next.js 16 to Astro 5
- Remove Framer Motion dependency (saves ~122KB gzipped)
- Lazy-load Howler.js audio (only on power button click)
- Disable expensive CSS effects on mobile (<768px):
- backdrop-blur replaced with solid backgrounds
- Cloud animations simplified (no blur, static)
- Rain canvas and SpinnerLights skip on mobile
- Avatar filters reduced to grayscale+brightness
- Optimize hydration: client:idle for decorative components
- Combine Google Fonts requests (2 -> 1)
- Remove audio preloading (lazy-loaded instead)
- Fix process.env -> import.meta.env for Astro compatibility
- Update Languages icon from Swift logo to code brackets
Uses Framer Motion for enter/exit/reorder animations. New commits
slide in from the top, existing commits smoothly animate to their
new positions. Adds ~40KB to the bundle.
- Create terminal-parser.ts to parse terminal-script.md
- Add build script (generate-terminal-data.ts) to convert markdown to TypeScript
- Refactor TerminalScreen.tsx to use generated data instead of hardcoded arrays
- Add prebuild script to package.json for automatic data generation
- Install tsx and @types/howler dev dependencies
- Fix parser to preserve spacing in COUNTER prefix (Memory Test: )
- Update terminal-script.md documentation with [INLINE] tag explanation
Now terminal content can be edited in markdown without touching TypeScript:
1. Edit terminal-script.md
2. Run: npx tsx scripts/generate-terminal-data.ts
3. Reload browser - changes are live
- Next.js static site in docs/ with SN Pro font and WarText headline
- 4 phosphor themes (Green, Amber, White, Red) with localStorage persistence
- Animated cloud background tinted to active theme
- SF Symbols icons via sf-symbols-lib/hierarchical
- PackageBadge with copy-to-clipboard, version from CI tag
- CI workflow builds landing page + DocC, deploys to GitHub Pages
- Version auto-resolved from git tags on deploy