CategoryTagArticle

admin

I'm a Full-stack developer

Tag

Linked List
Data Structure
Chat GPT
Design Pattern
Microservices
API
AWS CDK
ReactJS
AWS Lightsail
Flutter Mobile
Microservice in a Monorepo
Published date: 22/06/2023

What is a Monorepo?


Monorepo is a single repository that contains multiple projects, packages, and lib. It is a centralized place that is for sharing, collaborating, and maintenance.

These days, many organizations choose mono repo to manage their source code, since it is too advantageous.


What are the benefits of Monorepo?


There are many advantages for developers when using monorepo:

  1. Easier to refactor the code:
  2. Help to avoid duplicating the code like common models, and code sharing:
  3. Can share CI/CD pipelines:
  4. Quickly find the committer who makes the broken legacy:
  5. Furthermore, a new team member can discover easier:


However, it also has some disadvantages


What are the disadvantages of Monorepo?

  1. Logger build times: spend more time running the build. Do not worry about this because of having some tools which to shorten build times and improve automation.
  2. Increate memory:
  3. Affect on delivery: your bugs or features are not released when the CI/CD pipelines build failed because one of the projects does not work.


What are the popular Monorepo tools?


There are many monorepo tools by Bazel (by Google), Gradle Build Tool (by Gradle, Inc), Lage (by Microsoft), Lerna, Nx (by Nrwl), Pants (by the Pants Build community), Rush (by Microsoft), and Turborepo (by Vercel).



As a workspace growth, the mono repo tool should provide:

Fast local computation caching
Fast local task orchestration
Fast-distributed computation caching
Fast-distributed task execution
Fast transparent remote execution
Fast-detecting affected projects/packages
Understandable workspace analysis
Understandable dependency graph visualization


Conclusion


References:
  1. Monorepo tools
  2. The Pros and Cons of Monorepos
Recommend

NodeJS Verify and Decode Cognito JWT Tokens
admin12/06/2023

NodeJS Verify and Decode Cognito JWT Tokens
In this article, I will show you how to verify and decode the Cognito JWT Tokens token.
Create Project with Express + TypeScript + ESLint + Auto Reload
admin12/06/2023

Create Project with Express + TypeScript + ESLint + Auto Reload
In this article, I introduce to you how to initialize an Express + TypeScript project.
TypeScript Design Pattern - Builder
admin07/08/2023

TypeScript Design Pattern - Builder
TypeScript Design Pattern - Builder
Newest

Microservice in a Monorepo
admin22/06/2023

Microservice in a Monorepo
Microservice in a Monorepo
Part 3: React Fragments
admin18/06/2023

Part 3: React Fragments
In this part, I will show you about good benefits when using fragments in React.
TypeScript Design Pattern - Proxy
admin11/08/2023

TypeScript Design Pattern - Proxy
Provide a surrogate or placeholder for another object to control access to it.
Đinh Thành Công Blog

My website, where I write blogs on a variety of topics and where I have some experiments with new technologies.

hotlinelinkedinskypezalofacebook
DMCA.com Protection Status
Feedback
Name
Phone number
Email
Content
Download app
hotline

copyright © 2023 - AGAPIFA

Privacy
Term
About