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
The Age of monorepos (JSNation)
Search
Miroslav Jonaš
June 16, 2022
Programming
0
160
The Age of monorepos (JSNation)
Miroslav Jonaš
June 16, 2022
Tweet
Share
More Decks by Miroslav Jonaš
See All by Miroslav Jonaš
Scaling Vendure with Nx
meeroslav
0
39
Don't let compilation set the length of your Glühwein break
meeroslav
0
29
Vanquishing deployment dragons with Nx wizardry
meeroslav
0
75
Don't let compilation set the length of your coffee break
meeroslav
0
32
The other JavaScript performance (no one is talking about)
meeroslav
0
140
Age of monorepos (NgDe)
meeroslav
0
81
Age of monorepos (Armada JS 2022)
meeroslav
0
140
Nx - The Obvious Choice
meeroslav
0
160
The Age of monorepos
meeroslav
0
170
Other Decks in Programming
See All in Programming
PostmanでAPIの動作確認が楽になった話
h455h1
0
190
Snowflakeで眠ったデータを起こそう!
estie
0
160
冗長なエラーログを削減し、スタックトレースを手に入れる / Reducing Verbose Error Logs and Obtaining Stack Traces
upamune
0
1.1k
AmperとFleetを使ったAndroidアプリ
yoppie
0
270
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
1.1k
Deep Dive into React Stream/Serialize
mugi_uno
3
740
2 週間で Twitter Bot を作ってみた
contour_gara
0
790
Fast JSX: Don't clone props object #28768
yossydev
1
200
新宿ダンジョンを可視化してみた
satoshi7190
3
420
From Spring Boot 2 to Spring Boot 3 with Java 21 and Jakarta EE
ivargrimstad
0
760
The Cutting Edge Of Versioning (LambdaConf 2024)
chriskrycho
0
200
AppRouter Panel Talk
yosuke_furukawa
PRO
1
490
Featured
See All Featured
Designing with Data
zakiwarfel
96
4.8k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Product Roadmaps are Hard
iamctodd
45
9.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
Clear Off the Table
cherdarchuk
85
310k
Optimising Largest Contentful Paint
csswizardry
13
2.4k
Into the Great Unknown - MozCon
thekraken
15
1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Art, The Web, and Tiny UX
lynnandtonic
290
19k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
22
1.6k
Debugging Ruby Performance
tmm1
70
11k
Being A Developer After 40
akosma
67
580k
Transcript
The Age of Monorepos Miroslav Jonas / @meeroslav / nx.dev
/ nrwl.io
@meeroslav / WARNING! Bad design Flickering colors Life-changing features
Miroslav Jonaš @meeroslav
None
@meeroslav / STATIC WEB (pre JS era)
None
@meeroslav /
@meeroslav / successfully confusing recruiters since 1995
@meeroslav / Age of Scripting
None
@meeroslav / Age of jQuery
Age of SPAs
@meeroslav / Age of JAMStack
None
@meeroslav / Age of Monorepos
Homepage App (framework X) Backend Every application* UI Components
/ Design system Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Admin Portal App Mobile App Utility
Homepage App (framework X) Backend Collocate UI Components
/ Design system Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Admin Portal App Mobile App Utility
Code sharing
@meeroslav / Just collocation NOT
Affected graph store games sales coupons core shared admin
Workspace analysis
Task orchestration Test Build Lint Build Lint Test Build Lint
Test
now powered by Nx
None
Caching Never { build, test, lint… } same code twice
{ build, test, lint,... } Nx Local cache { build, test, lint,... } Nx Local cache
Distributed task execution 10 tasks 110 tasks 100 tasks 150
tasks Single agent 10 tasks 105 tasks 5 tasks 60 tasks 35 tasks Agent 1 Agent 2 Agent 3 Agent 4 Agent 5
Code constraints
@meeroslav / But I have only one project…
Powerful generators
Consistent tooling
@meeroslav / Monorepos bring clarity - workspace analysis - graph
visualization
@meeroslav / - local & remote caching - task orchestration
- detecting affected nodes - distributed task execution Monorepos bring speed
@meeroslav / - code sharing - code collocation - powerful
generators - consistent tooling - code constraints Monorepos make it easy
None
WHY BE A 10X WHEN YOU CAN BE AN
NX DEVELOPER? @meeroslav /
Miroslav Jonas / @meeroslav / nx.dev / nrwl.io Thank you