As your code base grows, you're faced with the decision on how to manage that. One is to keep breaking it up into multiple smaller repos - essentially each one with their own build and their own practices. The way you consume code across them is through publishing, through version publishing. Where a mono repo is helpful is that you get this visibility into all of the upstream dependencies.