core/dashboard/DASHBOARD.md
Tiago Yamamoto a52bd4519d refactor: optimize Dockerfiles and documentation for core services
- Use Google Distroless images for all services (Go & Node.js).
- Standardize documentation with [PROJECT-NAME].md.
- Add .dockerignore and .gitignore to all projects.
- Remove docker-compose.yml in favor of docker run instructions.
- Fix Go version and dependency issues in observability, repo-integrations, and security-governance.
- Add Podman support (fully qualified image names).
- Update Dashboard to use Node.js static server for Distroless compatibility.
2025-12-30 13:22:34 -03:00

71 lines
2.2 KiB
Markdown

# DASHBOARD
O `dashboard` é a interface de administração e operação da plataforma, construído como uma Single Page Application (SPA) moderna. Ele oferece controle centralizado sobre infraestrutura, projetos, finanças e integrações.
## 📋 Visão Geral
Com um design inspirado no VSCode ("VSCode-like"), o dashboard foca em densidade de informação e usabilidade para desenvolvedores e operadores.
### Arquitetura Frontend
```mermaid
graph TD
User[Operador] -->|Browser| SPA[React SPA]
SPA -->|Auth/Data| BaaS[Appwrite / BaaS Control Plane]
SPA -->|Git Ops| GitHub[GitHub API]
SPA -->|Infra| CF[Cloudflare API]
subgraph Modules
SPA --> Accounts[Gerenciador de Contas]
SPA --> Kanban[Gestão de Projetos]
SPA --> Finance[Financeiro ERP]
SPA --> Terminals[Logs Realtime]
end
```
## 🚀 Estrutura do Projeto
O projeto utiliza **Vite + React** para alta performance de desenvlvimento e build:
| Diretório | Descrição |
| :--- | :--- |
| `src/pages` | Telas principais (Overview, Projects, Kanban, etc.). |
| `src/components` | Componentes reutilizáveis (Cards, Inputs, UserDropdown). |
| `src/contexts` | Gestão de estado global (Auth). |
| `src/lib` | Configurações de serviços externos (Appwrite SDK). |
## 🛠️ Tecnologias e Otimizações
- **Frontend**: React 18, TypeScript, TailwindCSS.
- **Build Tool**: Vite.
- **Deploy**: Docker (Nginx Alpine).
- **Integrações**: Appwrite, GitHub, Cloudflare.
## 💻 Como Executar
### Docker (Produção)
```bash
docker-compose up --build
```
O dashboard estará acessível na porta `80` (ou conforme mapeamento no compose).
### Desenvolvimento Local
1. **Instale dependências**:
```bash
npm install
```
2. **Configuração**:
Crie o arquivo `.env` com as chaves do Appwrite (ver `.env.example`).
3. **Rodar**:
```bash
npm run dev
```
## 🔧 Detalhes do Dockerfile
O `Dockerfile` utiliza multi-stage build para servir apenas arquivos estáticos:
- **Builder**: Node.js 20. Compila o React para HTML/CSS/JS otimizado.
- **Runtime**: Nginx Alpine. Serve a pasta `dist` gerada, com configuração leve e performática.