$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Age of monorepos (Armada JS 2022)
Search
Miroslav Jonaš
October 06, 2022
Programming
0
260
Age of monorepos (Armada JS 2022)
Miroslav Jonaš
October 06, 2022
Tweet
Share
More Decks by Miroslav Jonaš
See All by Miroslav Jonaš
The dark art of code optimization
meeroslav
0
26
Drum 'n' JS
meeroslav
0
42
Monorepo demystified: Breaking the myth
meeroslav
0
28
Making the Argument for Monorepos
meeroslav
0
24
Scaling Vendure with Nx
meeroslav
0
140
Don't let compilation set the length of your Glühwein break
meeroslav
0
79
Vanquishing deployment dragons with Nx wizardry
meeroslav
0
210
Don't let compilation set the length of your coffee break
meeroslav
0
110
The other JavaScript performance (no one is talking about)
meeroslav
0
270
Other Decks in Programming
See All in Programming
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
320
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
3
700
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
6
1.8k
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
6
2.1k
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
160
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
310
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
160
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
160
20 years of Symfony, what's next?
fabpot
2
350
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.3k
【CA.ai #3】Google ADKを活用したAI Agent開発と運用知見
harappa80
0
300
愛される翻訳の秘訣
kishikawakatsumi
3
320
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
698
190k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
For a Future-Friendly Web
brad_frost
180
10k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Mobile First: as difficult as doing things right
swwweet
225
10k
Context Engineering - Making Every Token Count
addyosmani
9
510
Docker and Python
trallard
47
3.7k
The Language of Interfaces
destraynor
162
25k
Transcript
The Age of Monorepos Miroslav Jonas / @meeroslav / nx.dev
/ nrwl.io
@meeroslav WARNING! Bad design Flickering colors Life-changing features
@meeroslav Miroslav Jonaš @meeroslav
@meeroslav
@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) Every application* UI Components / Design
system Backend Service 1 Service 1 Service 1 Service 1 Service 1 Service 1 Service 1
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 v1 v3 v2_beta v1.0.1 ~2.15.0 > 3.0.0
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 Homepage App (framework X) Admin Portal App Auth
@meeroslav Just collocation NOT
Affected graph + deploy admin store api
admin store api Deploy every second week Deploy on Tuesdays
Deploy on every change Affected graph + deploy
Workspace analysis
Task orchestration Test Build Lint Build Lint Test Build Lint
Test
None
Caching Never { build, test, lint… } same code twice
{ build, test, lint,... } Nx Local cache { build, test, lint,... } Nx Local cache CI provider
Distributed task execution Main agent
Distributed task execution Idle time Idle time
Distributed task execution
Distributed task execution
@meeroslav Agent utilization Optimal idle time
@meeroslav
Code constraints
Code constraints store checkout sales coupons core shared admin
@meeroslav But I have only one project…
Powerful generators
Consistent tooling
None
@meeroslav Migrate existing Create new
@meeroslav Migrate existing Convert existing
@meeroslav Migrate existing Convert existing
@meeroslav Monorepos bring clarity - workspace analysis - graph visualization
@meeroslav Monorepos bring speed - local & remote caching -
task orchestration - detecting affected nodes - distributed task execution
@meeroslav Monorepos make it easy - code sharing - code
collocation - powerful generators - consistent tooling - code constraints
@meeroslav - developer mobility - collaboration as default - can
change the organization - greater confidence - velocity increase Not just a fancy tool
@meeroslav
@meeroslav nx.dev / nrwl.io Use
WHY BE A 10X WHEN YOU CAN BE AN
NX DEVELOPER? @meeroslav /
@meeroslav
Thank you Miroslav Jonas / @meeroslav / nx.dev / nrwl.io