Attention: This page is 29 days older than the English version and might be outdated. If you're a native speaker of this language and would like to contribute to the project, please consider updating this page to match the latest English version.
You can also view the English version of this page.
Estrutura de Pastas
Por favor, selecione seus pacotes para ver a estrutura de pastas de um aplicativo recém-estruturado com essas seleções. Mais abaixo, você encontrará uma descrição de cada pacote.
prisma
A pasta prisma
contém o arquivo schema.prisma
que é usado para configurar a conexão com o banco de dados e o schema do banco de dados. Ela também é onde são salvos os arquivos de migração e/ou scripts de seed, se usados. Veja Uso do Prisma para mais informações.
public
A pasta public
contém recursos estáticos que são servidos pelo servidor web. O favicon.ico
é um exemplo de um recurso estático.
src/env
Usado para a validação de variáveis ambiente e definição de tipos - veja Variáveis de Ambiente.
src/pages
A pasta pages
contém todas as páginas da aplicação Next.js. O arquivo index.tsx
na raiz da pasta /pages
é a página inicial da aplicação. O arquivo _app.tsx
é usado para envolver a aplicação com providers. Veja a Documentação do Next.js↗ para mais informações.
src/pages/api
A pasta api
contém todas as rotas API da aplicação Next.js. O arquivo examples.ts
contém um exemplo de rota que usa o recurso de Rotas API do Next.js↗ junto com o prisma. O arquivo restricted.ts
contém um exemplo de rota que usa o recurso de Rotas API do Next.js↗ e é protegido pelo NextAuth.js↗.
src/pages/api/auth/[...nextauth].ts
O arquivo [...nextauth].ts
é a rota de autenticação com slug do NextAuth.js. Ele é usado para lidar com as requisições de autenticação. Veja Uso do NextAuth.js para mais informações sobre o NextAuth.js, e a Documentação de Rotas Dinâmicas do Next.js↗ para informações sobre rotas com parâmetros/slugs.
src/pages/api/trpc/[trpc].ts
O arquivo [trpc].ts
é o ponto de entrada do tRPC. Ele é usado para lidar com as requisições do tRPC. Veja Uso do tRPC para mais informações sobre esse arquivo, e Documentação de Rotas Dinâmicas do Next.js↗ para informações sobre rotas com parâmetros/slugs.
src/server
A pasta server
é usada para de maneira clara separar código do servidor e código do cliente.
src/server/auth.ts
Contém utilitários para autenticação, como recuperar a sessão do usuário no lado do servidor. Veja uso do NextAuth.js para mais informações.
src/server/db.ts
O arquivo db.ts é usado para instanciar o cliente Prisma no escopo global. Veja uso do Prisma e melhores práticas para usar o Prisma com o Next.js↗ para mais informações.
src/server/api
A pasta api contém o código do lado do servidor do tRPC.
src/server/api/routers
A pasta routers contém todos as sub-rotas do tRPC.
src/server/api/routers/example.ts
O arquivo example.ts
é um exemplo de roteador tRPC que utiliza o utilitário publicProcedure
para demonstrar como criar uma rota tRPC pública.
Dependendo dos pacotes escolhidos, este roteador contém mais ou menos rotas para melhor demonstrar o uso de acordo com suas necessidades.
src/server/trpc/trpc.ts
O arquivo trpc.ts
é o arquivo de configuração principal para seu back-end tRPC. Aqui nós:
- Definimos o contexto usado nas requests tRPC. Veja uso do tRPC para mais informações.
- Exportamos os auxiliares de procedures. Veja uso do tRPC para mais informações.
src/server/api/root.ts
O arquivo root.ts
é usado para mesclar as rotas tRPC e exportá-las como um único roteador, bem como a definição de tipo da rota. Veja uso do tRPC para mais informações.
src/styles
A pasta styles
contém os estilos globais da aplicação.
src/types
A pasta types
é usada para guardar tipos ou definições de tipos reutilizáveis.
src/types/next-auth.d.ts
O arquivo next-auth.d.ts
é usado para estender o tipo padrão de sessão do NextAuth para incluir o ID de usuário. Veja Uso do NextAuth.js para mais informações.
src/utils
A pasta utils
é usada para guardar funções utilitárias comuns reutilizáveis.
src/utils/api.ts
O arquivo api.ts
é o ponto de entrada front-end para o tRPC. Veja uso do tRPC para mais informações.
.env
O arquivo .env
é usado para armazenas as variáveis ambiente. Veja Variáveis de Ambiente para mais informações. Esse arquivo não deve ser commitado para o histórico do git.
.env.example
O arquivo .env.example
mostra um exemplo de de variáveis ambiente baseado nas bibliotecas escolhidas. Esse arquivo deve ser commitado para o histórico do git.
.eslintrc.cjs
O arquivo .eslintrc.cjs
é usado para configurar o ESLint. Veja Documentação do ESLint↗ para mais informações.
next-env.d.ts
O arquivo next-env.d.ts
garante que os tipos do Next.js sejam lidos pelo compilador do TypeScript. Você não deve remover ou editar, uma vez que pode mudar a qualquer momento. Veja Documentação do Next.js ↗ para mais informações.
next.config.mjs
O arquivo next.config.mjs
é usado para configura o Next.js. Veja Documentação do Next.js↗ para mais informações. Nota: a extensão .mjs é usada para permitir importações de módulos ESM.
postcss.config.cjs
O arquivo postcss.config.cjs
é usado para o uso do Tailwind PostCSS. Veja Documentação do Tailwind PostCSS↗ para mais informações.
prettier.config.mjs
O arquivo prettier.config.mjs
é usado para configura o Prettier e incluir o prettier-plugin-tailwindcss para a formatação das classes CSS. Veja o post no Blog do Tailwind CSS↗ para mais informações.
tsconfig.json
O arquivo tsconfig.json
é usado para configurar o TypeScript. Algumas configurações diferentes do padrão, como strict mode
, foram habilitadas para garantir o melhor uso do TypeScript no create-t3-app e suas bibliotecas. Veja Documentação do Typescript↗ ou Uso do TypeScript para mais informações.