Capítulo 135 de 456

src

Core Idea

Alternativa a manter app/pages na raiz do projeto: mover para src/app ou src/pages para separar código de aplicação dos arquivos de configuração.

Key Concepts

  • src/app ou src/pages: substituem app/pages na raiz quando presentes.
  • Precedência: se app/pages existir na raiz, a versão em src/ é ignorada.
  • /public: permanece sempre na raiz do projeto, nunca dentro de src.

Reference Tables

O que moverOnde fica
app ou pagessrc/app ou src/pages
components, libGeralmente também para dentro de src/
publicSempre na raiz
package.json, next.config.js, tsconfig.json, .env.*Sempre na raiz
proxy.tsDentro de src/ se estiver usando essa estrutura

Anti-patterns

  • Esquecer de atualizar tailwind.config.js: precisa do prefixo /src na seção content para o Tailwind encontrar as classes.
  • Esquecer de atualizar tsconfig.json: paths como @/* precisam incluir src/ para os imports funcionarem.

Key Takeaways

  1. É puramente uma preferência organizacional, sem efeito funcional além dos ajustes de config necessários.
  2. Todo arquivo de configuração de projeto continua na raiz; só o código de aplicação migra para src/.
  3. Se usar Proxy, ele deve estar dentro de src/ junto com o resto do código de app.

Connects To

  • Project Structure: guia geral de convenções de pastas do Next.js.