This reference outlines a robust file system layout for enterprise-grade software projects. It provides a blueprint for structuring source code to achieve a modular, maintainable architecture.
The layout accounts for complex requirements such as multiple transport types (HTTP, WebSockets, CLI), varied data encodings, and multi-tenancy configurations where specific clients require custom database extensions. While few projects require every directory presented here simultaneously, this guide serves as a comprehensive map for placing code and resources correctly. It also guides you on how to scale down the layout for smaller projects below the full layout.