Pular para o conteúdo
Skillpedia
APIs e servidores (backend)41 mil · #4866

nextjs-app-router-patterns

Faz seu agente usar os recursos mais recentes do Next.js. Ele ajuda a criar aplicações web rápidas e modernas.

O que ela faz

Este guia ensina como usar os recursos mais recentes do Next.js para criar aplicações web modernas. Ele cobre como fazer o código rodar no servidor ou no navegador, como mostrar partes da página enquanto outras carregam e como organizar seus arquivos.

Quando usar

  • ✓Ao iniciar um novo projeto com Next.js.
  • ✓Ao migrar um projeto antigo para as novas funcionalidades do Next.js.
  • ✓Ao querer que sua página carregue mais rápido, mostrando conteúdo aos poucos.

Exemplo do que pedir para a IA

“Como configuro meu projeto Next.js para usar componentes que rodam no servidor?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/wshobson/agents/blob/main/plugins/frontend-mobile-development/skills/nextjs-app-router-patterns/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/wshobson/agents/blob/main/plugins/frontend-mobile-development/skills/nextjs-app-router-patterns/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ele explica os diferentes tipos de componentes (servidor e cliente) e como eles funcionam. Também mostra como organizar os arquivos da sua aplicação para usar as melhores práticas do Next.js.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add wshobson/agents --skill nextjs-app-router-patterns

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/frontend-mobile-development/skills/nextjs-app-router-patterns/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Padrões de App Router do Next.js

Padrões abrangentes para arquitetura do App Router do Next.js 14+, Server Components e desenvolvimento React full-stack moderno.

Quando Usar Esta Habilidade

  • Construindo novas aplicações Next.js com App Router
  • Migrando do Pages Router para o App Router
  • Implementando Server Components e streaming
  • Configurando rotas paralelas e interceptoras
  • Otimizando a busca e o cache de dados
  • Construindo funcionalidades full-stack com Server Actions

Conceitos Principais

1. Modos de Renderização

Modo Onde Quando Usar
Server Components Apenas Servidor Busca de dados, computação pesada, segredos
Client Components Navegador Interatividade, hooks, APIs do navegador
Estático Tempo de build Conteúdo que raramente muda
Dinâmico Tempo de requisição Dados personalizados ou em tempo real
Streaming Progressivo Páginas grandes, fontes de dados lentas

2. Convenções de Arquivos

app/
├── layout.tsx       # Shared UI wrapper
├── page.tsx         # Route UI
├── loading.tsx      # Loading UI (Suspense)
├── error.tsx        # Error boundary
├── not-found.tsx    # 404 UI
├── route.ts         # API endpoint
├── template.tsx     # Re-mounted layout
├── default.tsx      # Parallel route fallback
└── opengraph-image.tsx  # OG image generation

Início Rápido

// app/layout.tsx
import { Inter } from 'next/font/google'
import { Providers } from './providers'

const inter = Inter({ subsets: ['latin'] })

export const metadata = {
  title: { default: 'My App', template: '%s | My App' },
  description: 'Built with Next.js App Router',
}

export default function RootLayout({
  children,
}: {
  children: React.ReactNode
}) {
  return (
    <html lang="en" suppressHydrationWarning>
      <body className={inter.className}>
        <Providers>{children}</Providers>
      </body>
    </html>
  )
}

// app/page.tsx - Server Component by default
async function getProducts() {
  const res = await fetch('https://api.example.com/products', {
    next: { revalidate: 3600 }, // ISR: revalidate every hour
  })
  return res.json()
}

export default async function HomePage() {
  const products = await getProducts()

  return (
    <main>
      <h1>Products</h1>
      <ProductGrid products={products} />
    </main>
  )
}

Padrões detalhados e exemplos práticos

A documentação detalhada dos padrões está em references/details.md. Leia este arquivo quando o nível de navegação acima for insuficiente.

Melhores Práticas

O Que Fazer

  • Comece com Server Components - Adicione 'use client' apenas quando necessário
  • Coloque a busca de dados perto de onde é usada - Busque dados onde eles são utilizados
  • Use limites do Suspense - Habilite o streaming para dados lentos
  • Aproveite as rotas paralelas - Estados de carregamento independentes
  • Use Server Actions - Para mutações com aprimoramento progressivo

O Que Não Fazer

  • Não passe dados serializáveis - Limitações da fronteira Servidor → Cliente
  • Não use hooks em Server Components - Sem useState, useEffect
  • Não busque dados em Client Components - Use Server Components ou React Query
  • Não aninhe layouts em excesso - Cada layout adiciona à árvore de componentes
  • Não ignore estados de carregamento - Sempre forneça loading.tsx ou Suspense
Perguntas frequentes

O que são Componentes de Servidor?

São partes do seu código que rodam apenas no servidor, ideais para buscar dados ou usar informações sensíveis.

O que é 'streaming'?

É uma técnica para mostrar partes de uma página web assim que elas ficam prontas, em vez de esperar a página inteira carregar.

O que são 'rotas paralelas'?

Permitem carregar diferentes partes da sua página independentemente, melhorando a experiência do usuário.

Detalhes

Descrição original do autor

Master Next.js 14+ App Router with Server Components, streaming, parallel routes, and advanced data fetching. Use when building Next.js applications, implementing SSR/SSG, or optimizing React Server Components.

repo: wshobson/agents

Popularidade

Estrelas no GitHub
41 mil
Posição no ranking
#4866
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas