67 lines
1.8 KiB
Markdown
67 lines
1.8 KiB
Markdown
# Estrutura do Projeto
|
|
|
|
Este documento apresenta a árvore de diretórios do repositório e a responsabilidade de cada pasta.
|
|
|
|
## Visão Geral
|
|
|
|
```text
|
|
.
|
|
├── .env.example
|
|
├── README-old.md
|
|
├── README.md
|
|
├── docs/
|
|
│ ├── CODEX_STYLE_GUIDE.md
|
|
│ ├── codigo_completo.md
|
|
│ ├── collections/
|
|
│ └── estrutura.md
|
|
├── eslint.config.mjs
|
|
├── next-env.d.ts
|
|
├── next.config.ts
|
|
├── package-lock.json
|
|
├── package.json
|
|
├── postcss.config.mjs
|
|
├── public/
|
|
│ ├── file.svg
|
|
│ ├── globe.svg
|
|
│ ├── next.svg
|
|
│ ├── vercel.svg
|
|
│ └── window.svg
|
|
├── src/
|
|
│ ├── app/
|
|
│ ├── components/
|
|
│ ├── hooks/
|
|
│ ├── lib/
|
|
│ ├── modules/
|
|
│ ├── services/
|
|
│ └── styles/
|
|
└── tsconfig.json
|
|
```
|
|
|
|
## Diretórios Principais
|
|
|
|
### `src/app`
|
|
- **Páginas**: cada subpasta representa uma rota do App Router.
|
|
- **API**: dentro de `src/app/api` ficam as API Routes em Edge Runtime.
|
|
- **layout.tsx**: layout raiz usado em todas as páginas.
|
|
|
|
### `src/components`
|
|
Componentes React compartilhados entre as páginas. Utilize _PascalCase_ para os nomes de arquivos.
|
|
|
|
### `src/hooks`
|
|
Hooks responsáveis por consumir os serviços e manipular estado local.
|
|
|
|
### `src/lib`
|
|
Inicialização do SDK do Appwrite e outras bibliotecas externas.
|
|
|
|
### `src/modules`
|
|
Funcionalidades escritas com o antigo Pages Router (ex.: módulo de faturas).
|
|
|
|
### `src/services`
|
|
Abstrações de acesso ao Appwrite. Cada serviço implementa operações CRUD da respectiva coleção.
|
|
|
|
## Convenções
|
|
- Componentes em `src/components` devem seguir `PascalCase.tsx`.
|
|
- Páginas e rotas usam nomes em _kebab-case_.
|
|
- Variáveis de ambiente obrigatórias estão listadas em `.env.example`.
|
|
|
|
Última atualização: 2025-07-15
|