Nicholai 827f13a2db feat(skills): add agent skills for claude code
add web-perf and vercel-react-best-practices skills from skills.sh
to improve ai assistance for this next.js + cloudflare workers project.

- web-perf: core web vitals analysis and performance auditing
- vercel-react-best-practices: react/next.js optimization patterns
- wrangler: cloudflare workers cli guidance (already existed)
2026-01-22 11:40:05 -07:00

949 B

title impact impactDescription tags
Conditional Module Loading HIGH loads large data only when needed bundle, conditional-loading, lazy-loading

Conditional Module Loading

Load large data or modules only when a feature is activated.

Example (lazy-load animation frames):

function AnimationPlayer({ enabled, setEnabled }: { enabled: boolean; setEnabled: React.Dispatch<React.SetStateAction<boolean>> }) {
  const [frames, setFrames] = useState<Frame[] | null>(null)

  useEffect(() => {
    if (enabled && !frames && typeof window !== 'undefined') {
      import('./animation-frames.js')
        .then(mod => setFrames(mod.frames))
        .catch(() => setEnabled(false))
    }
  }, [enabled, frames, setEnabled])

  if (!frames) return <Skeleton />
  return <Canvas frames={frames} />
}

The typeof window !== 'undefined' check prevents bundling this module for SSR, optimizing server bundle size and build speed.