API para suporte à aplicação de gestão de projetos, desenvolvedores e tarefas com gamificação por pontos.
O PontuaFlow API é uma aplicação backend construída em .NET 8 que suporta a gestão de projetos, tarefas, desenvolvedores e equipes. A aplicação integra um sistema de gamificação, incentivando o progresso através de pontuações bem definidas.
- Módulo de Projetos e Semanas: Controle hierárquico onde
Weeks(semanas) possuem numeração única garantida por projeto. - Módulo de Desenvolvedores (
Devs) e Equipes (DevTeams): Cadastro unificado e associação direta com os projetos. - Ciclo e Avaliação de Tarefas (
Tasks): Atribuição de tarefas ao dev e vinculação à semana específica do projeto. - Regras de Pontuação (Gamificação): Validação fixa de pontos baseada no resultado da tarefa:
- 🔴
0: Zerou / Não deu - 🟠
2: Saiu algo - 🟡
3: Quase - 🟢
5: Deu bom (Meta regular) - 🔵
8: Extra (Superação)
- 🔴
- Métricas e Ranking:
- Total de Pontos: Soma simples de todos os pontos ganhos em tarefas fechadas por um dev num projeto.
- Aproveitamento (%): Cálculo fundamentado em
((Pontos Obtidos) / (Quantidade de Tasks Cadastradas * 5)) * 100. - Ranking: Lista de Devs de um determinado projeto ordenada do maior para o menor multiplicador/pontuação.
PontuaFlowAPI/
├── Controllers/ # Endpoints REST expostos
├── Data/ # Entity Framework e AppDbContext
├── Migrations/ # Controle de versionamento do BD gerados pelo EF Core
├── Models/ # Entidades (Project, Dev, Task, Week, DevTeam)
├── appsettings.json
├── Program.cs # Registro de dependências, setup da API e documentação Swagger
├── PontuaFlow.csproj
└── README.md
- Clone o repositório
git clone https://github.com/juletopi/PontuaFlowAPI.git
cd PontuaFlowAPI- Restaure as dependências do projeto
dotnet restore- Configure a string de conexão
Edite o arquivo appsettings.json na raiz da API ou os User Secrets, ajustando com os seus dados locais do PostgreSQL:
"ConnectionStrings": {
"DefaultConnection": "Host=localhost;Database=PontuaFlowDB;Username=postgres;Password=suasenha"
}- Aplique as Migrations
dotnet ef database update- Inicie o projeto
dotnet runNote
O Swagger irá gerar automaticamente a documentação UI dos endpoints da API.
Ele estará acessível através da rota http://localhost:<PORTA_LOCAL>/swagger/index.html.