Analytics / Ferramentas para Devs

PRWise - Plataforma de Análise de Revisão de PRs

Python Django DRF PostgreSQL pgvector Redis Celery React TypeScript Vite Tailwind CSS Three.js d3-force-3d ECharts Docker Render Google OAuth GitHub App Resend pytest Vitest Playwright
Visitar site →
PRWise - Plataforma de Análise de Revisão de PRs

Visão Geral

PRWise extrai dados de PRs do GitHub e os transforma em cenas 3D com física que respondem a quatro perguntas — quanto tempo até alguém olhar um PR, o que está parado e precisa de atenção, quem está carregando a maior carga de revisão e se os merges realmente seguem as regras de proteção de branch definidas. Cada relatório é uma cena, não um gráfico. Partículas fluem por pipelines, revisores aparecem como poços gravitacionais com PRs orbitando ao redor, violações de conformidade passam pelos guard gates. Restrições de privacidade são estruturais: sem rankings, todos são pseudônimos por padrão, e exibir nomes reais requer acionar um toggle — com registro em audit log.

O Desafio

Times de engenharia geram milhares de PRs e revisões, mas os padrões que importam permanecem invisíveis. O trabalho de revisão está se acumulando em duas pessoas enquanto os outros só observam? As regras de proteção de branch estão sendo contornadas? Quanto tempo os PRs realmente ficam parados antes de alguém olhar? Os dashboards do GitHub não respondem isso. As ferramentas que tentam ou despejam dados crus sem estrutura, ou criam rankings que classificam desenvolvedores — o que incentiva o jogo dos números e destrói a confiança. Gestores precisam de algo que mostre a saúde do processo de revisão sem virar uma ferramenta de vigilância.

A Solução

Um backend Django se comunica com o GitHub por meio de um único cliente de API. Webhooks disparam em eventos de PR, mas em vez de confiar no payload, eles re-buscam o estado atual do PR via GraphQL — upserts idempotentes, então replay é inofensivo. Um backfill resumível cobre o histórico com persistência de cursor. Toda noite, uma varredura de reconciliação captura o que os webhooks perderam. As definições de métricas vivem em um único módulo derive como funções puras: um PR entra, um conjunto de fatos computados sai. Os relatórios agregam dessas linhas, então não podem discordar entre si. O frontend é React com Three.js e d3-force-3d para as cenas 3D, com fallback para HTML estático quando o usuário tem reduced motion ativado. PostgreSQL 17 com pgvector para busca vetorial. Redis 7, Celery, Docker Compose para a stack. O sistema de papéis impõe pseudônimos no nível member, nomes reais no nível manager com tooltip de orientação, e cada revelação de nome registra no audit log.

Destaques

4
Cenas 3D com física para relatórios
Multi-tenant
Privacidade com papéis e audit logging
GitHub
Pipeline de ingestão Webhook + GraphQL
No ranking
Stack-ranking desabilitado por design

Ready to scale your engineering team?

Tell us about your project and we'll get back to you within 24 hours.

Start a conversation