Bem-vindo ao repositório do projeto Peo. Este projeto é uma entrega do MBA DevXpert Full Stack .NET e é referente ao terceiro módulo do MBA Desenvolvedor.IO.
O objetivo principal é desenvolver uma plataforma educacional online com múltiplos bounded contexts (BC), aplicando DDD, TDD, CQRS e padrões arquiteturais para gestão eficiente de conteúdos educacionais, alunos e processos financeiros.
- Eduardo Gimenes
- Filipe Alan Elias
- Jonatas Cruz
- Joseleno Santos
- Leandro Andreotti
- Paulo Cesar Carneiro
- Marcelo Menezes
O projeto consiste em:
- API RESTful: Exposição dos endpoints necessários para os casos de uso.
- Autenticação e Autorização: Implementação de controle de acesso, diferenciando administradores e alunos.
- Acesso a Dados: Implementação de acesso ao banco de dados através de ORM.
- Linguagem de Programação: C#
- Frameworks:
- ASP.NET Blazor
- ASP.NET Core Web API
- Entity Framework Core
- MudBlazor
- NSwag
 
- Banco de Dados: SQL Server / SQLite
- Autenticação e Autorização:
- ASP.NET Core Identity
- JWT (JSON Web Token) para autenticação na API
 
- Documentação da API: Swagger
A estrutura do projeto é organizada da seguinte forma:
- 
src: códigos-fonte da solução 
- 
tests: testes de integração e de unidade. 
- 
docs: documentação do projeto e requisitos 
- 
README.md: Arquivo de Documentação do Projeto 
- 
FEEDBACK.md: Arquivo para Consolidação dos Feedbacks 
- 
DEVELOPMENT.md: Notas de apoio para o desenvolvimento 
- 
.gitignore: Arquivo de Ignoração do Git 
- 
.gitattributes: Atributos do Git 
- 
.editorconfig: Preferências de Estilo de Código 
- .NET SDK 9.0 ou superior
- SQL Server ou SQLite
- Visual Studio 2022 ou superior (ou qualquer IDE de sua preferência)
- Git
- 
Clone o Repositório: - git clone https://github.com/jonataspc/MBA-Peo-microservices.git
- cd MBA-Peo
 
- 
Configuração do Banco de Dados: - No arquivo \src\Peo.Web.Api\appsettings.json, configure a string de conexão do SQL Server.
- Rode o projeto para que a configuração do Seed crie o banco e popule com os dados básicos
 
- No arquivo 
- 
Executar a API: - cd src\Peo.Web.Api
- dotnet run --launch-profile "https"
- Acesse a documentação da API em: https://localhost:7113/
 
- 
Credenciais de teste para usuário administrativo: 
Usuário: [email protected]
Senha: @dmin!
- JWT para API: As chaves de configuração do JWT estão no \src\Peo.Web.Api\appsettings.json.
- Migrações do Banco de Dados: As migrações são gerenciadas pelo Entity Framework Core. Não é necessário aplicar manualmente devido a configuração do seed de dados.
A documentação da API está disponível através do Swagger. Após iniciar a API, acesse a documentação em https://localhost:7113/
Uma documentação extensiva pode ser obtida aqui.
A cobertura de código pode ser gerada manualmente/localmente através do script \scripts\run-tests-with-coverage.ps1 (que utiliza dotCover) e pode ser visualizada no caminho \scripts\report.html.
No repositório GitHub a action de compilação executa a compilação e os testes, além de gerar o relatório de cobertura de código e armazena-lo como artefato, que pode ser obtido:
- Acesse a aba "Actions" do repositório.
- Escolha o último workflow executado.
- Na seção Artifacts, baixar o arquivo ZIP, contendo o relatório em HTML.
- Este projeto é parte de um curso acadêmico e não aceita contribuições externas.
- Para feedbacks ou dúvidas utilize o recurso de Issues
- O arquivo FEEDBACK.mdé um resumo das avaliações do instrutor e deverá ser modificado apenas por ele.