add monorepo

This commit is contained in:
Thorsten Essig
2022-04-22 18:13:55 +02:00
committed by resah
parent a9582f6bf8
commit c4d1081f18

View File

@@ -0,0 +1,21 @@
---
title: "Monorepo"
ring: trial
quadrant: methods-and-patterns
featured: true
---
A monorepo is a single repository containing multiple projects and shared libraries with their relationships.
At AOE, we are use a monorepo that is home to both our React and Next.js based frontends and
our [Go](/languages-and-frameworks/go-lang.html) / [Flamingo](/languages-and-frameworks/flamingo.html) based backends,
as well as shared libraries we use in all of our projects.
The main benefits in that approach are:
* Breaking changes are directly detected and must be fixed within the same pull request on all projects
* No conflicting versions of dependencies
* Same CI Setup for everything and no overhead on new projects
* Tool consistency over all projects
If you take the monorepo approach, of course you want to have a tool to manage it. There are a lot of them on the market
and at AOE we have decided to go with [Nx](/tools/nx.html).