Energy Awareness (EA) em português "Consciencialização para a Energia 💡" é um projecto open-source que visa ajudar as famílias 👨👩👧👦 a fazerem o uso adequado da energia elétrica economizando nas despesas e garantir uma redução no orçamento mensal. Os usuários vão puder calcular de maneira fácil e rápida o custo de cada equipamento ligado a corrente elétrica, bem como receber dicas e sugestões sobre os melhores momentos para usar cada equipamento bem como eventuais alterações das taxas e tarifas adicionais aplicadas pelas companhias de energia. Portanto, os usuarios vão puder fazer simulações e previsão dos custos com a energia antes mesma da factura ou boleto chegar. 💸
Este projeto visa demonstrar o uso de boas patricas de desenvolvimento de software
Se você gostou do projecto EA ou ajudou-te, deixa uma estrela e faça a sua contribuição.
- Precisa ter instalado o Visual Studio 2022 ou posterior, compativel com o SDK .NET 8.
- Clonar este projecto para o seu computador
- Executar a restauração dos pacotes Nuget ou dependências dos projectos
Também pode ser executado usando o Visual Studio Code (Windows, Linux ou MacOS).
- Arquitetura Limpa e boas práticas
- DDD (Domain Drive Designer)
- Código Limpo
- SOLID
- KISS - Manter o máximo de simplicidade e descartar a complexidade.
- DRY - Evite ao maximo replicação, optando por abstração de coisas comum.
- YAGNI - Manter somente as funcionalidades necessárias, deixando as funcionalidades futuras para o futuro.
- SoC - Manter a separação de responsabilidade ou comportamento.
- CQRS
- Unit Of Work
- Repository
- Singleton, Scoped e Transient.
- Domain Model
- Domain Events
- Domain Validation
- Domain Notifications
- Dependency Injection
- .NET 8
- ASP.NET Core Web API
- Identity
- Native DI
- Docker
- Swagger com JWT
- Fluent Validation
- EntityFramework Core
- Serilog + Seq
- xUnit
- FluentAssertions
- NetArchTest
Caso queira contribuir entre sempre em contacto para alinharmos os próximos passos.
O projeto esta disponível online em Energy Awareness
O projeto Energy Awareness foi desenvolvido por Martinho Sebastião