

Posted in
November 27, 2023
DEVELOPMENT TERMS TO KNOW
Should You Love Them or Hate Them?
Lindsay Harrison, Project Manager here at Acro, gets to the heart of a term you will hear now and again if you are part of a development team. Monorepos are loved and hated. Read what Lindsay has to say, and you decide how you feel about them.
A monorepo, short for "monolithic repository," is a software development approach where all the source code for a project or organization is stored in a single version control repository, such as Git, rather than being divided into multiple smaller repositories. In a monorepo, code for different components, libraries, or projects is organized and managed together in one place.
The choice of whether to love or hate monorepos depends on various factors, including the size and complexity of your project, your team's development workflow, and your specific use case. Here are some arguments for both sides and a specific example of how this monorepo approach worked for one of our longtime enterprise clients:
For one of our significant enterprise endeavours, TELUS Business Solutions, we made a strategic decision to transition to a monorepo architecture. This choice was driven by the project's intricate web of closely interconnected applications. Our Project Lead and Senior Software Developer, Cody Banman, recognized that the advantages of this architectural shift would far outweigh the effort involved.
The adoption of a monorepo architecture has empowered us to streamline our development processes, especially when tackling tasks that necessitate modifications across multiple applications within this expansive project.

Ultimately, whether you should love or hate monorepos depends on your specific circumstances. For smaller projects or organizations, monorepos may offer advantages in terms of code sharing and simplicity. However, for larger, more complex projects, the challenges of managing a monorepo may outweigh the benefits, and a multi-repo approach may be more suitable.
Evaluating your project's needs, team dynamics, and available tooling is essential to determine whether a monorepo is the right choice for your development workflow. In practice, many organizations adopt a hybrid approach, using monorepos for some parts of their codebase and separate repositories for others to strike a balance between code organization and manageability.
So, that’s the long of it. The short of it is to approach monorepos with caution and consult expert advice when required.
Fill in the form below, and one of our subject matter experts will be happy to give you a call.