Apresentando o DongleSimulator - Totalmente inspirado no FeijoadaSimulator, o DongleSimulator é um ecosistema onde você pode enviar Templates e Sources para aprovação dos Administradores. Depois que forem aprovados, esses templates e sources poderão ser utilizados como input para gerar imagens aleatórias!
A API oferece suporte para PostgreSQL como opção para banco de dados e o Cloudinary como host de imagens. Ela permite que usuários cadastrados possam enviar sources e templates (imagens). Essas imagens podem ser aprovadas pelos Administradores, que então estarão aptas a serem utilizadas pelo "Bot" que gera as imagens.
Outras tecnologias e práticas adotadas incluem o Entity Framework para o mapeamento de objetos relacionais e a implementação de Tokens JWT para autenticação segura. As migrações do banco de dados são gerenciadas para assegurar uma evolução controlada do esquema de dados.
- Dashboard de Sources e Templates: Todos irão poder ver os sources e templates pendentes, aprovados e negados. 📋
- CRUD de Sources e Templates: Usuários normais podem enviar e deletar seus próprios sources e templates. Usuários Admin podem gerenciar essas imagens, aprovando, negando ou excluindo-as. ⬆️🖼️
- Autenticação e Autorização: Usuários normais e administradores têm rotas específicas e personalizadas para suas funcionalidades. 🔒
- Geração de Imagens: Usuários admin têm acesso a uma rota personalizada que permite gerar imagens a partir dos sources e templates aprovados, de forma aleatória ou conforme especificado no corpo da requisição. 🤖
- Domain-Driven Design (DDD): Estrutura modular que facilita a manutenção da aplicação. 🖥️
Os templates devem seguir um padrão específico. Se o número de substituições ("replaces") em um template for igual a 2, o template deve incluir uma área nas cores verde (#00ff00) e roxo (#800080). Se o número de substituições for igual a 1, apenas a área verde (#00ff00) é necessária.
EX:
O Bot irá procurar por essas cores e substituí-las pelas sources escolhidas.
- Documentação Swagger - [ ]
- Seed para criar um usuário admin - [X]
- Admin
- Rota para deletar qualquer template - [X]
- Rota para negar qualquer template - [X]
- Gerenciar usuários cadastrados - [X]
- User
- Rotas para alternar informações pessoais como username e senha - [ ]
- Dashboard
- Filtro avançado de sources e templates - [X]
- Implementar Docker (?) - [ ]
Para obter uma cópia local funcionando, siga estes passos simples.
Usuário Admin:
E-mail: dglsim@email.com
Senha: dongle123456- Clone o repo
- Preencha as informações no arquivo
appsettings.Development.Example.json - Remova o
.Exampledo nome do arquivo - Execute a API
Sinta-se à vontade para usar este projeto para se divertir. No entanto, advirto que a distribuição ou comercialização não é permitida.
