Automated summary
Assists in building production-grade React applications with Next.js using the App Router, Server Components, and Server Actions.
Strengths
- Enforces Next.js best practices like co-locating data fetching and image optimization.
- Guides the use of Server Components and Server Actions to minimize client-side JavaScript.
- Helps choose appropriate rendering strategies (ISR, SSG, SSR) per page.
- Includes workflows for authentication, middleware, and deployment.
Limitations
- Requires a solid understanding of Next.js 14+ to avoid misinterpretation of generated code.
- May generate boilerplate that needs manual tuning for unique business logic.
- Does not cover migration from older Next.js versions.
Use this skill when building or maintaining a Next.js application with the App Router and modern features.
Avoid it for simple React projects without Next.js, or if you are using the Pages Router with no plans to upgrade.
Security analysis
SafeThe skill provides educational guidance on using Next.js, with no instructions to execute system commands, access sensitive data, or perform any destructive or exfiltrating actions. It is purely informational and instructional.
No concerns found
How this analysis is madeExamples
Create a Next.js dashboard with server-side data fetching and streaming using Server Components, including route groups and loading states.Implement login and signup using Server Actions with form validation, session cookies, and middleware to protect dashboard routes.Help me set up ISR for my product pages with revalidation every 60 seconds, and use generateStaticParams for the blog archive.name: nextjs description: >- Assists with building production-grade React applications using Next.js. Use when working with the App Router, Server Components, Server Actions, Middleware, or deploying to Vercel or self-hosted environments. Trigger words: nextjs, next.js, app router, server components, server actions, react framework, ssr, isr. license: Apache-2.0 compatibility: "Requires Node.js 18+" metadata: author: terminal-skills version: "1.0.0" category: development tags: nextjs,react,full-stack,ssr,server-components
Next.js
Overview
Next.js is a full-stack React framework featuring the App Router with Server Components, Server Actions for mutations, and multiple rendering strategies (SSG, SSR, ISR, PPR). It provides automatic code splitting, image optimization, and deployment options from Vercel to self-hosted Docker.
Instructions
- When creating routes, use file-based routing in the
app/directory withpage.tsxfor pages,layout.tsxfor persistent layouts,loading.tsxfor streaming, anderror.tsxfor error boundaries. - When building components, default to Server Components (no directive needed) for zero client-side JavaScript, and add
"use client"only for components needing event handlers, hooks, or browser APIs. - When fetching data, query databases directly in Server Components with
async/await, usefetch()with caching options (revalidate,force-cache), and co-locate data fetching with the component that needs it. - When handling mutations, use Server Actions with
"use server"directive and<form action={...}>for progressive enhancement, then callrevalidatePath()orrevalidateTag()after mutations. - When choosing rendering, default to ISR with
revalidatefor most pages, usegenerateStaticParams()for fully static pages, anddynamic = "force-dynamic"only when fresh data is required on every request. - When adding middleware, use
middleware.tsat the project root for auth redirects, geolocation, and A/B testing with matcher config to scope it to specific routes. - When optimizing, use
next/imagefor all images (WebP/AVIF, lazy loading),next/fontfor zero layout shift fonts, andgenerateMetadata()for dynamic SEO.
Examples
Example 1: Build a dashboard with Server Components
User request: "Create a Next.js dashboard with server-side data fetching and streaming"
Actions:
- Create dashboard layout with
layout.tsxand parallel routes for widgets - Fetch data directly in async Server Components with database queries
- Add
loading.tsxfor Suspense-based streaming of slow components - Use
revalidatefor ISR to balance freshness and performance
Output: A fast dashboard that streams data progressively with zero client-side JavaScript for data fetching.
Example 2: Add authentication with Server Actions
User request: "Implement login/signup with Server Actions and middleware protection"
Actions:
- Create login form with
<form action={loginAction}>using Server Actions - Implement session management with encrypted cookies
- Add middleware to redirect unauthenticated users from
/dashboard/* - Use
useOptimistic()for instant form feedback
Output: A progressively enhanced auth system with server-side validation and route protection.
Guidelines
- Default to Server Components; add
"use client"only for interactivity (event handlers, hooks, browser APIs). - Use Server Actions for mutations instead of API routes; they are simpler and support progressive enhancement.
- Co-locate data fetching with components: fetch in the Server Component that needs the data, not in a parent.
- Use
loading.tsxat route boundaries for streaming; do not block the entire page on a slow query. - Use
generateMetadata()for dynamic pages; staticmetadataexport for fixed pages. - Set
revalidateon fetch calls or at page level: ISR is almost always better than full SSR. - Use
next/imagefor all images; the optimization is significant (WebP/AVIF, lazy loading, responsive).
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/next-js-full-stack-react-framework-mmio721t' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/next-js-full-stack-react-framework-mmio721t/download' --output '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md.part' && mv '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md.part' '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Environment declared by the author: Requires Node.js 18+
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md' && test -s '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/nextjs' && cp -R '.skill-downloads/next-js-full-stack-react-framework-mmio721t' '.claude/skills/nextjs'Cursor
test -f '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md' && test -s '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/nextjs' && cp -R '.skill-downloads/next-js-full-stack-react-framework-mmio721t' '.cursor/skills/nextjs'Codex
test -f '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md' && test -s '.skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/nextjs' && cp -R '.skill-downloads/next-js-full-stack-react-framework-mmio721t' '.agents/skills/nextjs'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/next-js-full-stack-react-framework-mmio721t'openskills read 'next-js-full-stack-react-framework-mmio721t'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/next-js-full-stack-react-framework-mmio721t/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.