Jump to content

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:

  1. Definimos o contexto usado nas requests tRPC. Veja uso do tRPC para mais informaƧƵes.
  2. 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.cjs

O arquivo prettier.config.cjs Ć© 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.


Recent Contributors To This Page