nextjs-expert

When reviewing or writing code, apply these guidelines:

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "nextjs-expert" with this command: npx skills add oimiragieo/agent-studio/oimiragieo-agent-studio-nextjs-expert

Nextjs Expert

next js

When reviewing or writing code, apply these guidelines:

  • Follow Next.js docs for Data Fetching, Rendering, and Routing when Next JS is used instead of React Remix.

next js 14 general rules

When reviewing or writing code, apply these guidelines:

  • Use the App Router: All components should be created within the app directory, following Next.js 14 conventions.

  • Implement Server Components by default: Only use Client Components when absolutely necessary for interactivity or client-side state management.

  • Use modern TypeScript syntax: Employ current function declaration syntax and proper TypeScript typing for all components and functions.

  • Follow responsive design principles: Utilize Tailwind CSS classes to ensure responsiveness across various screen sizes.

  • Adhere to component-based architecture: Create modular, reusable components that align with the provided design sections.

  • Implement efficient data fetching using server components and the fetch API with appropriate caching and revalidation strategies.

  • Use Next.js 14's metadata API for SEO optimization.

  • Employ Next.js Image component for optimized image loading.

  • Ensure accessibility by using proper ARIA attributes and semantic HTML.

  • Implement error handling using error boundaries and error.tsx files.

  • Use loading.tsx files for managing loading states.

  • Utilize route handlers (route.ts) for API routes in the App Router.

  • Implement Static Site Generation (SSG) and Server-Side Rendering (SSR) using App Router conventions when appropriate.

next js 15 async request api rules

When reviewing or writing code, apply these guidelines:

  • Always use async versions of runtime APIs: typescript const cookieStore = await cookies() const headersList = await headers() const { isEnabled } = await draftMode()

  • Handle async params in layouts/pages: typescript const params = await props.params const searchParams = await props.searchParams

next js 15 component architec

Consolidated Skills

This expert skill consolidates 1 individual skills:

  • nextjs-expert

Iron Laws

  • ALWAYS use the App Router (app/ directory) for all new Next.js 13+ routes — the Pages Router is legacy; mixing both creates conflicting rendering contexts and blocks Server Components.

  • NEVER add 'use client' by default — every component is a Server Component unless it needs browser APIs, event listeners, or client state; unnecessary 'use client' negates streaming and server caching.

  • ALWAYS await async Request APIs (cookies() , headers() , params , searchParams ) in Next.js 15+ — synchronous access throws in strict mode and breaks PPR behavior.

  • NEVER omit error.tsx and loading.tsx at route segments — without them, errors bubble to root and unmount the entire page; segment-level files enable granular error recovery and streaming UI.

  • ALWAYS use next/image with fill and sizes for fluid images — hard-coded width/height on fluid images causes layout shift that fails Core Web Vitals (CLS).

Anti-Patterns

Anti-Pattern Why It Fails Correct Approach

Using Pages Router for new routes Cannot use Server Components, streaming, or cacheComponents Use App Router (app/ directory) for all new routes; migrate incrementally

Adding 'use client' by default Forces client-side rendering; inflates bundle; loses streaming and caching Keep server-only; add 'use client' only when browser APIs or event handlers are required

Synchronous cookies() / headers() in Next.js 15+ Throws in strict mode; breaks PPR; deprecated API Await all Request APIs: const cookieStore = await cookies()

Hard-coded width/height on fluid images Layout shifts fail CLS Core Web Vitals Use fill with sizes for fluid containers; exact dimensions only for fixed-size images

Missing error.tsx at route segments Errors bubble to root; entire page unmounts on any error Add error.tsx and loading.tsx at each segment; use Suspense for streaming

Memory Protocol (MANDATORY)

Before starting:

cat .claude/context/memory/learnings.md

After completing: Record any new patterns or exceptions discovered.

ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

pyqt6-ui-development-rules

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-analyzer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

gcloud-cli

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

github-mcp

No summary provided by upstream source.

Repository SourceNeeds Review