Monorepo & One Lingua Franca: TypeScript

Rafael Rozon
5 min readMar 29, 2021

Building a Web App Series: Issue #2

Photo by Nick Fewings on Unsplash

I guess the first technical decision when building a web app is: where will it live? Traditionally, there were 2 options: a monorepo or multi repositories. But I have seen it, and it’s possible to have a hybrid. Use a monorepo for some projects and also other multiple repositories, each one for a single project. I’m choosing the monorepo model, but I can always go hybrid and have some projects in their own repository if things change. What follows is why and how it may look like it.

But, first, a little digression.

What is a monorepo?

A monorepo is a source code repository that contains many projects. Traditionally software has been split into multiple projects, and each one gets its own folder and source control history. A monorepo is a single folder with many other sub-folders where each one is a project in itself. Usually, there is one single source control history, but there are alternative setups.

A few more definitions for what follows:

  • Web App: the UI that the user interacts with
  • Project: source code for an application
  • Application: source code that is up and running. That’s a crude explanation, but it seems clear. This would be a web server, a…

--

--