Server vs. Client Component boundaries, SSR hydration safety, and Next.js 16 App Router best practices.
MotionFoundry is purpose-built for the Next.js App Router:
- Minimal
"use client"Boundaries: Only leaf interactive components mark"use client". Documentation layouts, route metadata, and static copy remain Server Components. - Zero Hydration Mismatches: Components never read
windowormatchMediaduring initial server render. Browser-only APIs (CanvasRenderingContext2D,window.matchMedia) run strictly insideuseEffect. - Transpile Packages in Monorepos: If consuming
@motionfoundry/uifrom source in a monorepo, addtranspilePackages: ["@motionfoundry/ui"]tonext.config.mjs.
// next.config.mjs/** @type {import('next').NextConfig} */const nextConfig = { reactStrictMode: true, transpilePackages: ["@motionfoundry/ui"],}; export default nextConfig;