Pular para o conteúdo
Skillpedia
Sites e telas (frontend)48 mil · #3687

nextjs-best-practices

Ajuda seu agente a aplicar os melhores princípios do Next.js App Router. Foca em Server Components, busca de dados e padrões de roteamento.

O que ela faz

Este guia ensina como usar o Next.js, um framework para criar sites e aplicativos web, seguindo as melhores práticas. Ele explica como dividir o código entre o servidor e o navegador, como buscar dados e organizar as páginas.

Quando usar

  • ✓Ao iniciar um novo projeto Next.js.
  • ✓Ao refatorar um projeto existente para melhorar a performance.
  • ✓Ao aprender sobre componentes de servidor e cliente.

Exemplo do que pedir para a IA

“Como posso organizar minhas páginas em um projeto Next.js?”

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/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/nextjs-best-practices/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/nextjs-best-practices/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

O Next.js divide o trabalho entre o servidor (onde a página é construída) e o navegador (onde o usuário interage). Ele usa convenções de arquivos e padrões específicos para otimizar a velocidade e a experiência do usuário.

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 sickn33/agentic-awesome-skills --skill nextjs-best-practices

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/nextjs-best-practices/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.

Melhores Práticas do Next.js

Princípios para o desenvolvimento do Next.js App Router.


1. Componentes de Servidor vs. Cliente

Árvore de Decisão

Does it need...?
│
├── useState, useEffect, event handlers
│   └── Client Component ('use client')
│
├── Direct data fetching, no interactivity
│   └── Server Component (default)
│
└── Both? 
    └── Split: Server parent + Client child

Por Padrão

Tipo Uso
Servidor Busca de dados, layout, conteúdo estático
Cliente Formulários, botões, UI interativa

2. Padrões de Busca de Dados

Estratégia de Busca

Padrão Uso
Padrão Estático (cacheado na compilação)
Revalidate ISR (atualização baseada em tempo)
No-store Dinâmico (a cada requisição)

Fluxo de Dados

Fonte Padrão
Banco de Dados Busca em Componente de Servidor
API fetch com cache
Entrada do Usuário Estado do Cliente + Ação do Servidor

3. Princípios de Roteamento

Convenções de Arquivo

Arquivo Propósito
page.tsx UI da Rota
layout.tsx Layout Compartilhado
loading.tsx Estado de Carregamento
error.tsx Limite de Erro
not-found.tsx Página 404

Organização de Rotas

Padrão Uso
Grupos de rotas (name) Organizar sem URL
Rotas Paralelas @slot Múltiplas páginas no mesmo nível
Interceptando (.) Modais sobrepostos

4. Rotas de API

Manipuladores de Rota

Método Uso
GET Ler dados
POST Criar dados
PUT/PATCH Atualizar dados
DELETE Remover dados

Melhores Práticas

  • Valide a entrada com Zod
  • Retorne códigos de status apropriados
  • Lide com erros de forma graciosa
  • Use o runtime Edge quando possível

5. Princípios de Desempenho

Otimização de Imagem

  • Use o componente next/image
  • Defina priority para acima da dobra (above-the-fold)
  • Forneça um placeholder de blur
  • Use tamanhos responsivos

Otimização de Bundle

  • Importações dinâmicas para componentes pesados
  • Divisão de código baseada em rota (automática)
  • Analise com o bundle analyzer

6. Metadados

Estático vs. Dinâmico

Tipo Uso
Exportação estática Metadados fixos
generateMetadata Dinâmico por rota

Tags Essenciais

  • title (50-60 caracteres)
  • description (150-160 caracteres)
  • Imagens Open Graph
  • URL canônica

7. Estratégia de Cache

Camadas de Cache

Camada Controle
Requisição Opções de fetch
Dados revalidate/tags
Rota Completa Configuração da rota

Revalidação

Método Uso
Baseado em tempo revalidate: 60
Sob demanda revalidatePath/Tag
Sem cache no-store

8. Ações do Servidor

Casos de Uso

  • Submissões de formulário
  • Mutações de dados
  • Gatilhos de revalidação

Melhores Práticas

  • Marque com 'use server'
  • Valide todas as entradas
  • Retorne respostas tipadas
  • Lide com erros

9. Anti-Padrões

❌ Não Fazer ✅ Fazer
'use client' em tudo Servidor por padrão
Buscar em componentes cliente Buscar no servidor
Ignorar estados de carregamento Usar loading.tsx
Ignorar limites de erro Usar error.tsx
Bundles cliente grandes Importações dinâmicas

10. Estrutura do Projeto

app/
├── (marketing)/     # Route group
│   └── page.tsx
├── (dashboard)/
│   ├── layout.tsx   # Dashboard layout
│   └── page.tsx
├── api/
│   └── [resource]/
│       └── route.ts
└── components/
    └── ui/

Lembre-se: Componentes de Servidor são o padrão por um motivo. Comece por eles, adicione cliente apenas quando necessário.

Quando Usar

Esta habilidade é aplicável para executar o fluxo de trabalho ou as ações descritas na visão geral.

Limitações

  • Use esta habilidade apenas quando a tarefa corresponder claramente ao escopo descrito acima.
  • Não trate a saída como substituta para validação específica do ambiente, testes ou revisão de especialistas.
  • Pare e peça esclarecimentos se os inputs necessários, permissões, limites de segurança ou critérios de sucesso estiverem ausentes.
Perguntas frequentes

O que são Componentes de Servidor e Cliente?

Componentes de Servidor rodam no servidor e são ótimos para buscar dados. Componentes de Cliente rodam no navegador e são usados para interatividade, como botões e formulários.

Como o Next.js busca dados?

Você pode buscar dados de forma estática (no momento da construção), com atualizações periódicas ou a cada requisição, dependendo da sua necessidade.

O que são 'Server Actions'?

São funções que rodam no servidor para realizar ações como enviar formulários ou atualizar dados, de forma segura e eficiente.

Detalhes

Descrição original do autor

Next.js App Router principles. Server Components, data fetching, routing patterns.

repo: sickn33/agentic-awesome-skills

Popularidade

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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas