For folks getting started with Pulumi, we have an ...
# getting-started
For folks getting started with Pulumi, we have an “IaC Recommended Practices” series that discusses a lot of different topics with regard to how to use Pulumi. This includes things like where to store your Pulumi code, how to use Git branches, using per-developer stacks, structuring Pulumi projects (when to use one project versus multiple projects), and more. You can find the first post in the series here:
Who is responsible for maintaining the code? If the application code and the Pulumi code are managed by different teams, then using separate repositories may be the best approach.
Seems too quick to rule out mono-repo approaches, they have a lot of advantages
There are lots of variables; each approach has advantages and disadvantages. You could definitely consider a monorepo; in fact, the fictional company in the series started out with a mono-repo. Nothing wrong with that, if it satisfies your requirements.