One repo per tool — is this overkill? #199017
Replies: 2 comments
-
|
Hey there! @xniperbuilds , This is a super common wall to hit. The "one repo per tool" approach feels amazing at first because of the clean, isolated deployments, but as soon as you need a unified brand or shared UI components, it turns into an absolute maintenance nightmare. Most developers hit the breaking point right around 10 to 15 repos, exactly when a simple 5-minute nav bar update turns into an hour of pulling, copy-pasting, and pushing. Here are the two most common ways people escape this trap:
The fix: You get one repo (which solves your scattered issues and cross-repo search problems instantly). Shared components live in a packages/ui folder that all your tools just import locally. The bonus: You can still configure GitHub Actions to deploy each tool independently to GitHub Pages, so you don't lose that benefit.
The fix: Your 10+ tools just install it as a dependency. The bonus: You can use a tool like Dependabot to automatically open PRs across all your repos whenever you update the nav bar package. If I were in your shoes, I would take a weekend to migrate to a monorepo. It solves all three of your pain points natively. Good luck with the tools! |
Beta Was this translation helpful? Give feedback.
-
|
I don’t think there’s a specific repo count where it suddenly becomes unmanageable. It’s more about how often you need to make the same change across all repos. If the tools are mostly independent, separate repos can still make sense. But once things like the navbar, shared styles, CI config, labels, or deployment logic start changing together, that’s usually the signal to centralize something. Before moving everything into a monorepo, I’d probably try a middle-ground approach first: keep the repos separate, but move shared UI into a small package or template, use reusable GitHub Actions workflows, and manage cross-repo work with GitHub Projects or consistent labels. If that still feels painful after a while, then a monorepo with independent deployments would probably be the cleaner long-term move. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
🏷️ Discussion Type
Question
Body
I've been doing this for a while: every small utility tool gets its own repo.
Not a monorepo, not subfolders — separate repo, separate GitHub Pages deployment.
What pushed me toward this:
Where it starts to hurt:
Running this setup across all my tools at xnipertools.com — works fine at
this scale, but I can feel it getting harder to manage as the count grows.
Has anyone hit a repo count where this breaks down completely? And did you
migrate to a monorepo or find another way around it?
Guidelines
Beta Was this translation helpful? Give feedback.
All reactions