Skip to content

chore: remove background animations and GPU-rendered surfaces - #390

Closed
jinglescode wants to merge 1 commit into
mainfrom
chore/remove-background-animations
Closed

chore: remove background animations and GPU-rendered surfaces#390
jinglescode wants to merge 1 commit into
mainfrom
chore/remove-background-animations

Conversation

@jinglescode

Copy link
Copy Markdown
Member

Summary

  • Removes the aurora CSS background system (gradient orbs, conic sheen, all animate-aurora* keyframes) and its app-wide render in layout.tsx plus the homepage hero scroll-fade logic
  • Removes the MarbleField WebGL fragment-shader background
  • Removes the three.js globe everywhere: the /globe route, homepage wrapper, api-docs backdrop (and its backdrop-blur), and the new-wallet-flow GlassMorphismPageWrapper backdrop (now a plain wrapper that only toggles the glass body class)
  • Removes the appearance zustand store and the user-settings Appearance card, which only served the background toggle/presets
  • Drops now-unused deps: three, three-globe, @react-three/fiber, @react-three/drei, and framer-motion (installed but never imported); lockfile re-synced

Content-level animations are kept: Reveal, Typewriter, feature-icon SVG keyframes, loading skeletons, tailwind accordion/popup keyframes, and the token-flow 2D canvases (functional data viz).

Test plan

  • npm run typecheck clean
  • npm run build (webpack) passes; /globe absent from the route list
  • Production server pixel-verified via Playwright: homepage and /api-docs render correctly, DOM probe shows 0 canvas/aurora/globe elements and 0 fixed background layers, no console errors
  • /globe returns 404
  • New-wallet-flow pages verified at code level only (behind wallet auth)

🤖 Generated with Claude Code

https://claude.ai/code/session_01N9JfXsXwJsssLBcoLD48p9

Removes all decorative background animation systems and their GPU
rendering paths, verified against a production build:

- Aurora CSS background (gradient orbs, conic sheen, keyframes) and its
  app-wide render in layout + homepage hero scroll-fade logic
- MarbleField WebGL fragment-shader background
- three.js globe (three-globe, @react-three/fiber, @react-three/drei):
  /globe route, homepage wrapper, api-docs backdrop, new-wallet-flow
  GlassMorphismPageWrapper backdrop
- Appearance zustand store + user settings Appearance card (only served
  the background toggle/presets)
- Unused deps: three, three-globe, @react-three/fiber, @react-three/drei,
  framer-motion (never imported)

Content-level animations kept: Reveal, Typewriter, feature-icon SVG
keyframes, loading skeletons, accordion/popup keyframes, token-flow 2D
canvases.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N9JfXsXwJsssLBcoLD48p9
@vercel

vercel Bot commented Aug 31, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
multisig Ready Ready Preview Aug 31, 2026 3:16am

Request Review

@QSchlegel

Copy link
Copy Markdown
Collaborator

Superseded by #395, which keeps these surfaces but gates them on what the device can actually render.

Same problem, different fix: instead of removing the aurora, the MarbleField shader and the three.js globe for everyone, #395 scores CPU cores, device memory, the unmasked GPU renderer, framebuffer size, handheld-ness, reduced-motion and data-saver into three tiers, then backs that heuristic with a frame-rate probe that steps the tier down when the page is not keeping budget. Weak and software-rendered devices end up where this PR put everyone — a static gradient, no WebGL — while capable ones keep the full set.

The two wins from here that carried over: api-docs no longer ships three.js to every visitor (static import → dynamic()), and its full-page backdrop-filter is dropped when there is nothing behind it to blur. Reopen this if we decide the surfaces should go regardless of hardware.

@QSchlegel QSchlegel closed this Sep 11, 2026
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.

2 participants