skills/nextjs/nextjs-rendering/SKILL.md
Select and implement SSG, SSR, ISR, Streaming, or Partial Prerendering strategies in Next.js App Router. Use when choosing a rendering mode for a page, configuring generateStaticParams, or enabling PPR.
npx skillsauth add hoangnguyen0403/agent-skills-standard nextjs-renderingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Choose rendering strategy based on data freshness and scaling needs. See Strategy Matrix.
force-cache for SSG, revalidate: N for ISR, no-store for SSR.<Suspense> with fallback.ppr: true in next.config.js for static shell + dynamic regions.See implementation examples
generateStaticParams to pre-render routes at build time. Triggered by fetch with cache: 'force-cache'.cookies(), headers(), or fetch with cache: 'no-store'. Use for personalized or high-freshness data.revalidate (time-based) or revalidatePath / revalidateTag (on-demand).Suspense to wrap slow async components and prevent them from blocking initial page load. Use loading.tsx for route-level skeletons.ppr: true in next.config.js.dynamicParams to control fallback behavior for uncached routes.window.innerWidth, Date.now()) in initial render. Use mounted useEffect pattern.runtime: 'edge' for low-latency globally distributed execution where full Node.js APIs not required.page.tsx: Wrap slow components in <Suspense> to stream.typeof window in initial render: Use useEffect to avoid hydration errors.development
Summarizes GitHub PR, GitLab MR, or Azure DevOps PR metadata, review threads, changed files, and template completeness. Use during review-ticket or code-review workflows when PR/MR context exists.
tools
Development tools, linting, and build config for TypeScript. Use when configuring ESLint, Prettier, Jest, Vitest, tsconfig, or any TS build tooling.
development
Validate input, secure auth tokens, and prevent injection attacks in TypeScript. Use when validating input, handling auth tokens, sanitizing data, or managing secrets and sensitive configuration.
development
Apply modern TypeScript standards for type safety and maintainability. Use when working with types, interfaces, generics, enums, unions, or tsconfig settings.