Pitch: Criei uma gem Rails pra visualizar o histórico de migrations (feedback bem-vindo)
Trabalho com Rails faz um tempo e uma coisa que sempre me incomodou foi não ter uma forma fácil de entender o que uma migration realmente fez no schema sem ler o arquivo com atenção ou ficar comparando o schema.rb na mão. Em times maiores isso piora... você herda um histórico com 300+ arquivos e zero contexto.
Então criei o Migflow como projeto paralelo. É uma engine Rails montável — você adiciona a gem, monta nas rotas e tem um dashboard em /migflow.
O que faz:
- Timeline de todas as migrations em ordem, cada uma com um resumo de uma linha do que mudou
- Diff de schema entre duas versões quaisquer (focado no que mudou, ou diff completo)
- Grafo estilo ERD com tabelas, colunas e foreign keys, com highlight das alterações
- Avisos de auditoria — colunas de foreign key sem índice, colunas
null: falseadicionadas sem default, esse tipo de coisa - Relatório via CLI (
rails migflow:report) que dá pra plugar no CI e barrar deploy por score de risco
É MIT, suporta Rails 7+, Ruby 3.2+, e acabei de lançar suporte pra apps API-only também.
Não estou tentando vender nada. Acho que isso preenche uma lacuna que não vi ser endereçada diretamente no ecossistema Rails. A maioria das ferramentas foca em rodar migrations com segurança; essa é sobre entendê-las.
Quero feedback honesto:
- Isso resolve um problema que você já sentiu?
- Tem algo obviamente faltando ou errado?
- Vale a pena ou é só um problema meu mesmo?
Repo: https://github.com/jv4lentim/migflow
Gem: https://rubygems.org/gems/migflow