Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
TypeScript + lerna + yarn monorepos FTW
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
paul souche
October 08, 2017
Programming
2k
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
190
Unit test in deno
paulsouche
0
190
One spec to rule them all
paulsouche
1
330
Analytics reverse engineering
paulsouche
0
190
Test like a boss with TypeScript
paulsouche
0
260
The internal modules strike back
paulsouche
0
150
AngularJS + Typescript === <3
paulsouche
0
370
Ma caisse enregistreuse en NodeJS
paulsouche
0
600
Other Decks in Programming
See All in Programming
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
4
4.8k
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
wkhtmltopdfの次どうするか問題2026
willnet
2
1.9k
R8 の設定見直しでアプリサイズ削減
andpad
0
210
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
160
golang-bob.pdf
iwatsukayura
0
130
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
5.1k
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
130
Kubernetes祭り #2 OP/ED
bells17
0
110
速習iPhone Duo対応
yuukiw00w
2
980
Agents on Rails - Rails at Scale 2026
irinanazarova
0
530
Featured
See All Featured
Tell your own story through comics
letsgokoyo
1
1.1k
Unsuck your backbone
ammeep
672
58k
Google's AI Overviews - The New Search
badams
0
1.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Darren the Foodie - Storyboard
khoart
PRO
4
4k
KATA
mclloyd
PRO
35
16k
Designing Experiences People Love
moore
143
24k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
330
Statistics for Hackers
jakevdp
799
230k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2k
Speed Design
sergeychernyshev
33
2.2k
What does AI have to do with Human Rights?
axbom
PRO
1
2.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