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
150
Unit test in deno
paulsouche
0
130
One spec to rule them all
paulsouche
1
270
Analytics reverse engineering
paulsouche
0
140
Test like a boss with TypeScript
paulsouche
0
210
The internal modules strike back
paulsouche
0
110
AngularJS + Typescript === <3
paulsouche
0
340
Ma caisse enregistreuse en NodeJS
paulsouche
0
530
Other Decks in Programming
See All in Programming
自分のために作ったアプリが、グローバルに使われるまで / Indie App Development Lunch LT
pixyzehn
1
150
gen_statem - OTP's Unsung Hero
whatyouhide
1
190
Devinのメモリ活用の学びを自社サービスにどう組み込むか?
itarutomy
0
2k
AHC 044 混合整数計画ソルバー解法
kiri8128
0
320
PHPUnit 高速化テクニック / PHPUnit Speedup Techniques
pinkumohikan
1
1.4k
パスキーのすべて / 20250324 iddance Lesson.5
kuralab
0
150
AIコーディングワークフローの試行 〜AIエージェント×ワークフローでの自動化を目指して〜
rkaga
2
3k
趣味全開のAITuber開発
kokushin
0
180
DomainException と Result 型で作る型安全なエラーハンドリング
karszawa
0
870
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
440
Going Structural with Named Tuples
bishabosha
0
200
安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記
sakuraikotone
5
2.7k
Featured
See All Featured
Fireside Chat
paigeccino
37
3.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2.2k
Done Done
chrislema
183
16k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
Agile that works and the tools we love
rasmusluckow
328
21k
Automating Front-end Workflow
addyosmani
1369
200k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Unsuck your backbone
ammeep
670
57k
Raft: Consensus for Rubyists
vanstee
137
6.9k
Code Review Best Practice
trishagee
67
18k
Thoughts on Productivity
jonyablonski
69
4.6k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
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