Hey everyone, I'm Timophei, an indie developer, and I built Perchly, a private Swift package registry for teams: perchly.dev
The problem I kept running into: if you have a few related Swift packages living in one monorepo, SPM's git based model normally forces you into either maintaining a separate repo per package, or splitting them out with git subtree just so each one resolves independently. Perchly implements the SE-0292 registry protocol directly, so you can publish independently versioned packages straight from a monorepo, no subtree hacks, no separate repos. There's also a small companion CLI (perchly-cli) that detects which packages actually changed and bumps/publishes just those.
It's live in production today, not a prototype. Orgs, GitHub OAuth, bearer tokens for CI, the monorepo CLI, and real billing for teams that outgrow the free tier are all working. It's a solo project with no corporate backing, so I won't pretend it's guaranteed to be around forever, but it's built to be low maintenance and I'm actively using and improving it myself.
Right now my priority is making the day to day experience genuinely convenient for small teams rather than chasing enterprise feature parity. I'd love feedback from anyone who's dealt with the multi package monorepo problem before, especially if I'm missing something obvious about how teams actually structure their Swift packages.