In reply to @whisperecean "<@180601887916163073> Stumbled upon": This is structuring along technical boundaries. As in, all models in one place, all queries in one place etc. This kind of structuring does not care about the contents of the queries or the models, it just knows their technical roles and puts stuff in there accordingly That works for smaller applications, but personally I prefer structuring across domain boundaries. By that I mean: Have folders for (ideally self-contained) "domains"/"topics"/parts of your applications that conceptually should be somewhat separate from one another (ideally that domain needs very little/no code from other domains).