Search⌘ K
AI Features

Introduction to Monorepo

Explore the concept of monorepos and understand how to structure multiple services within a single GitHub project. Learn how to use tools like Lerna to manage shared configurations and dependencies, streamlining the development process for cloud native web applications.

We'll cover the following...

Monorepo

A monorepo, which stands for a monolithic repository, is a way to keep a project’s individual services in a single source code repository.

Example

For example, consider the following directory structure:

There are three different services that can share the same configuration files such as code formatting, test suite setup, etc. to perform the operations independently: api, email-sender, and website.

Lerna

Lerna is a tool for managing and optimizing the workflow of multi-package JavaScript project repositories with Git and NPM.

For the purpose of this course, we will only use it to install NPM packages in our monorepo for all services.