root@construct:~/rants/o-debate-monorepo-vs-polyrepo-eh-o-novo-vim-vs-emacs$
<-- voltar para /rants
2026-01-12//RANT

O Debate Monorepo vs Polyrepo É o Novo Vim vs Emacs

A cada seis meses alguém no Twitter reacende a guerra monorepo versus polyrepo e eu perco mais um ano de vida assistindo. Já cansei de briga por uma resposta universal que não existe.

"Monorepo é o futuro! O Google usa!" O Google também construiu seus sistemas de controle de versão e build, e emprega milhares de engenheiros de infra pra sustentar isso. Tu tem sete devs e uma org no GitHub. Senta aí, por favor.

"Polyrepo dá independência de verdade!" Aproveita pra manter 47 pipelines de CI separados, coordenar releases em 12 repos e gastar metade da sprint debugando incompatibilidade de versão entre pacotes que precisavam ser atualizados juntos. Boa sorte.

A escolha depende do time, por mais chata que seja essa resposta. Pra time pequeno, com serviço acoplado e biblioteca compartilhada, eu iria de monorepo. Turborepo melhorou muito o tooling. Migrei três projetos pra ele ano passado e o build caiu 60% com o cache. Ele cuida do grafo de dependência e do build incremental, além do cache remoto.

Polyrepo faz sentido com time grande, serviços independentes e cadências de deploy diferentes. Cada time pode ser dono do repo, do CI e do deploy.

Acho que a maioria escolhe polyrepo pra evitar investir em tooling de monorepo. E a maioria escolhe monorepo porque viu uma palestra em conferência. Nenhuma dessas razões presta.

O tooling pesa nessa decisão. Lerna tá morto; se tu ainda usa, meus pêsames de coração. Nx é poderoso, mas complexo. Turborepo acerta o sweet spot pra maioria dos times. Escolhe pelas tuas necessidades, sem terceirizar isso pra influencer.

E, pelo amor de tudo que é sagrado, para de comparar teu setup com FAANG. Tu já tem teus próprios problemas pra resolver.

The Broad Way | Kinho.dev