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.8k
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
110
One spec to rule them all
paulsouche
1
230
Analytics reverse engineering
paulsouche
0
130
Test like a boss with TypeScript
paulsouche
0
200
The internal modules strike back
paulsouche
0
110
AngularJS + Typescript === <3
paulsouche
0
330
Ma caisse enregistreuse en NodeJS
paulsouche
0
500
Other Decks in Programming
See All in Programming
Hono・Prisma・AWSでGeoなAPI開発
nokonoko1203
5
610
ゲームボーイアドバンスでSwiftを動かそう
k_koheyi
0
510
令和トラベルにおけるLLM活用事例:社内ツール開発から得た学びと実践
ippo012
0
110
詳解UIWindow
natmark
3
2k
2024 컴포즈 정원사
jisungbin
0
140
The Sequel to a Dream of Ruby Parser's Grammar
ydah
1
180
私の考える初学者がBlazorできるまでの学習方法
tomokusaba
1
240
【TID2024】模擬講義:プログラマと一緒にゲームをデザインしてみよう!
akatsukigames_tech
0
370
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
3
110
フロントエンドカンファレンス北海道2024 『小規模サイトでも使えるVite 〜HTMLコーディングをよりスマートに〜』長谷川広武(ハム)
h2ham
1
2.5k
暴走のウホーレン 〜想いってのはvimrcにしないと伝わらないんだぜ〜 / iosdc_japan_2024
uhooi
1
240
GoのIteratorに詳しくなってしまう
inatonix
1
170
Featured
See All Featured
The Language of Interfaces
destraynor
153
23k
Writing Fast Ruby
sferik
623
60k
The Illustrated Children's Guide to Kubernetes
chrisshort
46
48k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Being A Developer After 40
akosma
82
580k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
25
1.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
230
130k
Producing Creativity
orderedlist
PRO
340
39k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
The Invisible Customer
myddelton
119
13k
From Idea to $5000 a Month in 5 Months
shpigford
378
46k
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