Fiap Cloud Games é uma poderosa plataforma de jogos em nuvem. A aplicação conta com arquitetura Domain-Driven Design (DDD), ASP.NET Core 8, autenticação via JWT e banco de dados PostgreSQL, além de contar uma boas práticas de arquitetura, segurança e escalabilidade com Azure Cloud.
Note
Este projeto visa oferecer uma aplicação robusta, escalável e segura. O desenvolvimento deste projeto é baseado exclusivamente nas suas necessidades guiadas pelo curso de pós graduação Fiap.
Table of contents
Comece clonando o repositório csharp-ander.techchallenge-users, executando o comando:
git clone https://github.com/andersonsrocha/csharp-ander.techchallenge-users.gitAgora acesse o projeto usando:
cd csharp-ander.techchallenge-usersAtualize a string de conexão do banco em appsettings.json e realize a restauração dos pacotes:
dotnet restoreAgora precisaremos aplicar as migrações, para isso acesse a pasta src e depois execute o comando:
dotnet ef database update -p TechChallengeUsers.Data -s TechChallengeUsers.ApiAinda dentro da pasta src, execute o comando abaixo para iniciar a aplicação:
dotnet run -p TechChallengeUsers.ApiE por fim poderá acessar a aplicação atráves do link Documentação.
Para o primeiro acesso utilize as credenciais abaixo:
{
"email": "admin@fiap.com.br",
"password": "*_7hg613"
}Agora para construirmos a aplicação, basta executar o comando abaixo no diretório raiz do projeto:
dotnet buildE por fim, para publicar a aplicação:
Tip
É possível trocar a pasta de destino substituindo ./publish pelo diretório desejado.
dotnet publish -c Release -o ./publish-
Usuário admin. -
Banco de dados. -
Login com autenticação JWT. -
Funções admin e user. -
Testes unitários.-
Validação de senha. -
Validação de e-mail. -
Autenticação. -
Criação de usuário.
-
-
Criação de arquivo Dockerfile. -
Domain-Driven Design. -
Criação de usuário. -
Criação de jogos. -
Criação de migrations. -
Pipeline de CI/CD
- 🎨 .NET 8 SDK: Framework moderno e multiplataforma da Microsoft que oferece alta performance, suporte nativo para contêineres, APIs mínimas e recursos avançados de desenvolvimento. Inclui melhorias significativas em performance, garbage collection otimizado e suporte completo para desenvolvimento de aplicações web robustas e escaláveis.
- 🗄️ PostgreSQL: Banco de dados relacional open-source robusto, conhecido por sua confiabilidade, recursos avançados e conformidade com padrões SQL. Oferece suporte para dados JSON, transações ACID e alta disponibilidade.
- 🧪 xUnit: Framework de testes unitários para .NET que fornece uma base sólida para testes automatizados, com suporte para testes parametrizados, fixtures e execução paralela.
- 🐳 Docker: Containerização da aplicação para garantir consistência entre ambientes de desenvolvimento, teste e produção, facilitando deploy e escalabilidade.
- 🔐 JWT Authentication: Sistema de autenticação baseado em tokens seguros e stateless, permitindo autorização distribuída e controle de acesso granular.
- 🏗️ Domain-Driven Design (DDD): Arquitetura que foca no domínio do negócio, promovendo código mais organizando, manutenível e alinhado com as regras de negócio.
Copyright © 2025.