Course introduction
This lesson preview is part of the Bundling and Automation in Monorepos course and can be unlocked immediately with a \newline Pro subscription or a single-time purchase. Already have access to this course? Log in here.
Get unlimited access to Bundling and Automation in Monorepos, plus 90+ \newline books, guides and courses with the \newline Pro subscription.

[00:00 - 00:14] Hi, my name is Ivan Tanev. I have been a software engineer for 18 years, the majority of which I have spent leading various teams and helping them move quickly and confidently without sacrificing code quality.
[00:15 - 00:22] In this course, we are going to build a TypeScript Monorepo from the ground up. We'll start with the basics.
[00:23 - 00:39] Node, pnpm, dependency management, shared scripts. Then we'll move into TypeScript and Monorepo specific tooling, including Prettier, ESLint, testing with Jest and Vitest and Git hook automation with Lefthook.
[00:40 - 01:03] From there, we'll look at sharing code within our Monorepo, organizing build tools, building for different targets, and bundling TypeScript for different target environments, and how tools like Preconstruct will help us create better internal packages. Finally, we wire everything in CI with GitHub actions.
[01:04 - 01:19] We will build deployment artifacts with Docker, and we'll use Turborepo to make task orchestration fast and cache aware. The goal of this course is not to just learn a collection of tools.
[01:20 - 01:43] The goal is to understand the problems that these tools solve, to be able to make your own choices about tooling in your own projects, and to enable your teams to be fast and confident in their code when the team grows. By the end, you know how to adapt the techniques rather than the tooling.
[01:44 - 01:44] Let's get started.