Documentação — EnergIA¶
Índice da documentação do projeto. Cada arquivo cobre um aspecto específico.
Arquivos¶
| Arquivo | Conteúdo |
|---|---|
| manual.md | Manual do Usuário — guia didático com figuras: Painel, tarifas, previsão, consumo por aparelho, assistente e alertas |
| arquitetura.md | Visão geral do sistema, apps Django e fluxo de dados |
| modelos.md | Modelos de dados e relacionamentos |
| api.md | Endpoints REST consumidos pelo app Flet |
| mqtt.md | Integração com MQTT, tópicos do ESP32 e validação do fluxo hardware → API sem hardware físico |
| instalacao.md | Guia de instalação não invasiva — requisitos, segurança elétrica, posicionamento, firmware, cadastro e validação inicial |
| hardware.md | Arquitetura Edge, orçamento, firmware e calibração do Smart Meter ESP32 |
| fator-de-potencia.md | Validação do Fator de Potência: erro de fase caracterizado, lacunas para uso industrial e protocolo de ensaio proposto |
| nilm.md | Algoritmo de NILM, recomendação de horário de uso, avaliação de acurácia e diagrama de arquitetura ponta a ponta |
| alertas.md | Alertas proativos: gatilhos, limites, cooldown, entrega (WhatsApp + dashboard), modo demonstração e cenários de teste |
| demo.md | Roteiro da demonstração ao vivo do Desafio 6: checklist, passos cronometrados e plano B |
| avaliacao-ux.md | Protocolo e registro da avaliação de UX com usuários não técnicos (exigência do briefing) |
| lgpd.md | Conformidade LGPD: minimização, finalidade, consentimento, retenção e segurança |
| termos.md | Termos de Uso do Serviço |
| design-system.md | Paleta de cores, tipografia e componentes TailwindCSS |
| convencoes.md | Padrões de código e convenções do projeto |
| setup.md | Configuração do ambiente de desenvolvimento |
| DEPLOY.md | Deploy em produção: Docker, VPS, TLS e operação |
O que é o projeto¶
EnergIA é um sistema de monitoramento de energia residencial. Um medidor ESP32 envia leituras elétricas via MQTT para uma aplicação Django que armazena os dados, calcula custos com as regras tarifárias da ANEEL, exibe dashboards em tempo quase real, prevê faturas e identifica aparelhos de alto consumo (NILM).
O sistema tem quatro interfaces para o usuário: - Web — Django Templates + TailwindCSS - Chat web — chatbot IA embutido na seção Assistente (botão flutuante + janela arrastável) - Mobile — app Flet (Python, Android/iOS) que consome a REST API - WhatsApp — assistente via Evolution API + LangChain/RAG (suporta até 3 números por usuário)
Referência completa:
PRD.mdna raiz do repositório.