Nextjs rendering
Skill ComeOnOliver/skillshub/skills/HoangNguyen0403/agent-skills-standard/nextjs-rendering
SSG, SSR, ISR, Streaming, and Partial Prerendering (PPR). Use when choosing a rendering strategy (SSG, SSR, ISR, PPR, or Streaming) in Next.js. (triggers: **/page.tsx, **/layout.tsx, generateStaticParams, dynamic, dynamicParams, PPR, streaming)From its SKILL.md
npx -y skills add ComeOnOliver/skillshub --skill nextjs-renderingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
2.3 KB, 509 tokens by cl100k_base, as published. Nobody here has run it
Rendering Strategies (App Router)
Priority: P0 (CRITICAL)
Choose rendering strategy based on data freshness and scaling needs. See Strategy Matrix.
Implementation Guidelines
- SSG (Static Site Generation): Default for App Router. Use
generateStaticParamsto pre-render routes at build time. Triggered byfetchwithcache: 'force-cache'. - SSR (Server-Side Rendering): Triggered by
cookies(),headers(), orfetchwithcache: 'no-store'. Use for personalized or high-freshness data. - ISR (Incremental Static Regeneration): Update static content after build. Use
revalidate(time-based) orrevalidatePath/revalidateTag(on-demand). - Streaming: Use
Suspenseto wrap slow async components and prevent them from blocking the initial page load. Useloading.tsxfor route-level skeletons. - PPR (Partial Prerendering): Combine static shell with dynamic regions in a single HTTP request. Enable
ppr: trueinnext.config.js. - Strategies: Choose rendering based on SEO (SSG/ISR) vs Interactivity (Client) vs Personalization (SSR). Utilize
dynamicParamsto control fallback behavior for uncached routes. - Hydration: Avoid Hydration Errors by not using browser-only values (
window.innerWidth,Date.now()) in the initial render. Use themounteduseEffect pattern. - Edge Runtime: Use
runtime: 'edge'for low-latency globally distributed execution where full Node.js APIs are not required.
Anti-Patterns
- No root awaits in
page.tsx: Wrap slow components in<Suspense>to stream. - No SSR for static content: Use SSG or ISR; reserve SSR for truly dynamic data.
- No
typeof windowin initial render: UseuseEffectto avoid hydration errors.
References
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.