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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
paul souche
October 08, 2017
Programming
1.9k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TypeScript + lerna + yarn monorepos FTW
paul souche
October 08, 2017
More Decks by paul souche
See All by paul souche
Une API from scratch avec NestJS
paulsouche
0
180
Unit test in deno
paulsouche
0
180
One spec to rule them all
paulsouche
1
320
Analytics reverse engineering
paulsouche
0
180
Test like a boss with TypeScript
paulsouche
0
250
The internal modules strike back
paulsouche
0
140
AngularJS + Typescript === <3
paulsouche
0
360
Ma caisse enregistreuse en NodeJS
paulsouche
0
590
Other Decks in Programming
See All in Programming
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
660
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
150
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
300
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
580
ふつうのFeature Flag実践入門
irof
8
4.1k
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
160
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
360
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
150
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
6.3k
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
540
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.4k
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
180
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
390
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
850
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
170
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
420
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
340
It's Worth the Effort
3n
188
29k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
320
Become a Pro
speakerdeck
PRO
31
6k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
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