Download do Template
Template completo de Arquitetura em Markdown. Inclui stack, padroes, modelos e especificacoes de API.
π Arquitetura como Blueprint
O documento de arquitetura e o blueprint tecnico completo do projeto. Cada decisao de tecnologia, cada padrao, cada API esta aqui. Desenvolvedores e IAs consultam este documento para garantir consistencia.
O que o Documento Define
π‘ Por que isso importa para IA
Quando a IA gera codigo, ela DEVE seguir este blueprint. Sem ele, cada geracao e uma loteria de padroes inconsistentes.
π¦ Tech Stack Table
Liste TODAS as tecnologias com versoes especificas. "Node.js" nao e suficiente. "Node.js 20.11.0 LTS" e. Versoes exatas evitam surpresas de compatibilidade.
Exemplo de Tech Stack Table
| Camada | Tecnologia | Versao | Justificativa |
|---|---|---|---|
| Runtime | Node.js | 20.11.0 LTS | Suporte longo prazo, estavel |
| Framework | Next.js | 14.1.0 | App Router, Server Components |
| Database | PostgreSQL | 16.1 | JSONB, indices parciais |
| ORM | Prisma | 5.8.0 | Type-safe, migrations |
β οΈ Evite
"Use a versao mais recente" - isso cria inconsistencia entre ambientes. Sempre fixe versoes.
π§± Padroes Arquiteturais
Documente os padroes escolhidos com justificativa. Repository Pattern, Dependency Injection, CQRS - estes padroes sao LEI para a IA seguir.
Repository Pattern
Abstrai acesso a dados em interfaces
Justificativa: Facilita testes e troca de ORM
Dependency Injection
Injeta dependencias via construtor
Justificativa: Testabilidade e desacoplamento
Clean Architecture
Camadas com dependencias unidirecionais
Justificativa: Separacao de responsabilidades
Event-Driven
Comunicacao via eventos assincronos
Justificativa: Escalabilidade e desacoplamento
ποΈ Modelos de Dados
Defina entidades, atributos e relacionamentos. Use diagramas Mermaid para visualizacao. Este modelo guia a criacao de banco de dados e APIs.
Estrutura de Entidade
email: string (unique, indexed)
password_hash: string
created_at: timestamp
updated_at: timestamp
Chaves
PK, FK, indices
Tipos
UUID, string, int, timestamp
Constraints
NOT NULL, UNIQUE, CHECK
π API Specification
Documente endpoints em formato OpenAPI/Swagger. Request/response schemas, codigos de erro, autenticacao. A IA usara isso para gerar codigo consistente.
Exemplo de Endpoint
π‘ Dica
Use ferramentas como Swagger UI para visualizar e testar sua API spec antes de implementar.
π Estrutura de Pastas
Defina onde cada tipo de arquivo vai. Controllers em /controllers, services em /services, etc. Consistencia e auditabilidade dependem disso.
Estrutura Tipica
src/ βββ app/ # Routes e pages (Next.js) βββ components/ # React components β βββ ui/ # Componentes genericos β βββ features/ # Componentes de dominio βββ lib/ # Bibliotecas e utilidades βββ services/ # Business logic βββ repositories/ # Data access layer βββ types/ # TypeScript types/interfaces βββ hooks/ # Custom React hooks βββ utils/ # Funcoes auxiliares
π Seguranca
Documente estrategias de validacao, autenticacao, autorizacao e gestao de secrets. Seguranca nao e opcional.
Autenticacao
- β’ JWT com refresh tokens
- β’ Expiracao: 15min access, 7d refresh
- β’ HTTP-only cookies para tokens
Autorizacao
- β’ RBAC (Role-Based Access Control)
- β’ Middleware de verificacao
- β’ Permissoes granulares
Validacao
- β’ Zod para schema validation
- β’ Sanitizacao de inputs
- β’ Rate limiting em endpoints
Secrets
- β’ .env para desenvolvimento
- β’ Vault/KMS para producao
- β’ Nunca commitar secrets
π Padrao de Codigo
Regras criticas que a IA DEVE seguir. "Nunca use any", "Sempre valide input", "Use prepared statements". Seja especifico e inequivoco.