Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TypeScript + lerna + yarn monorepos FTW
Search
paul souche
October 08, 2017
Programming
1
1.9k
TypeScript + lerna + yarn monorepos FTW
paul souche
October 08, 2017
Tweet
Share
More Decks by paul souche
See All by paul souche
Une API from scratch avec NestJS
paulsouche
0
160
Unit test in deno
paulsouche
0
150
One spec to rule them all
paulsouche
1
280
Analytics reverse engineering
paulsouche
0
150
Test like a boss with TypeScript
paulsouche
0
210
The internal modules strike back
paulsouche
0
120
AngularJS + Typescript === <3
paulsouche
0
350
Ma caisse enregistreuse en NodeJS
paulsouche
0
550
Other Decks in Programming
See All in Programming
フロントエンドのmonorepo化と責務分離のリアーキテクト
kajitack
2
160
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
220
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
140
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
110
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
1.9k
CSC305 Summer Lecture 12
javiergs
PRO
0
130
🔨 小さなビルドシステムを作る
momeemt
3
660
時間軸から考えるTerraformを使う理由と留意点
fufuhu
14
4.3k
UbieのAIパートナーを支えるコンテキストエンジニアリング実践
syucream
2
830
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
540
ソフトウェアテスト徹底指南書の紹介
goyoki
1
140
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
1.5k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.8k
What's in a price? How to price your products and services
michaelherold
246
12k
Bash Introduction
62gerente
615
210k
Visualization
eitanlees
148
16k
The Cult of Friendly URLs
andyhume
79
6.6k
Faster Mobile Websites
deanohume
309
31k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
A Modern Web Designer's Workflow
chriscoyier
696
190k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Navigating Team Friction
lara
189
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Transcript
TypeScript + lerna + yarn monorepos FTW Paris TypeScript #10
10/10/2017 1
Me, myself & I Paul Souche Front End developer @S_A_N_T_E_C_H
In love with TypeScript since 2014 @paul.souche paulsouche @paulsouche 2
Multi repos : why ? - Monoliths no more -
Build only the necessary - Clearer subversion history - Easier revert - 1 app > 1 repo - 1 service > 1 repo... 3
Multi repos : but ... - Switch project all the
time - Sequential builds - Evergreen anti pattern - Dependencies - Versioning - Features branch 4
- Build everything everytime - Build order - Subversion Conflicts
- Licenses 5 Did you said monorepo?
6 DEPENDENCIES APP 1 DEPENDENCIES APP 2 Projects architecture
Editor architecture 7 DEPENDENCIES COMMON 2 COMMON 1 APP 1
APP 2 APP 3 APP 4
Lerna << Lerna is a tool that optimizes the workflow
around managing multi-package repositories with git and npm >> 8
Prerequisites 9
Lerna project structure - lerna import <path to package> -
lerna bootstrap 10
What it does 11
Demo 12
Yeah… But ? - devDependencies are the same so lerna
bootstrap could be very slow for more packages (cache) - Build is sequential 13
yarn workspaces 14
Lerna config 15
What happen to the structure 16
Demo 17
Build 18 - Several flags such as --parallel I won’t
talk about - Bash is always the answer for uncommon problems
That’s all folks THANKS References Lerna Yarn workspaces Demo 19