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
Scaling Vendure with Nx
Search
Miroslav Jonaš
December 09, 2023
Programming
0
120
Scaling Vendure with Nx
Miroslav Jonaš
December 09, 2023
Tweet
Share
More Decks by Miroslav Jonaš
See All by Miroslav Jonaš
The dark art of code optimization
meeroslav
0
15
Drum 'n' JS
meeroslav
0
31
Monorepo demystified: Breaking the myth
meeroslav
0
21
Making the Argument for Monorepos
meeroslav
0
12
Don't let compilation set the length of your Glühwein break
meeroslav
0
72
Vanquishing deployment dragons with Nx wizardry
meeroslav
0
200
Don't let compilation set the length of your coffee break
meeroslav
0
100
The other JavaScript performance (no one is talking about)
meeroslav
0
260
Age of monorepos (NgDe)
meeroslav
0
200
Other Decks in Programming
See All in Programming
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.4k
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
370
Model Pollution
hschwentner
1
180
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
私はどうやって技術力を上げたのか
yusukebe
43
17k
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
580
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
7
1.6k
XP, Testing and ninja testing ZOZ5
m_seki
2
280
Catch Up: Go Style Guide Update
andpad
0
170
Swift Concurrency - 状態監視の罠
objectiveaudio
2
450
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
920
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
697
190k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Statistics for Hackers
jakevdp
799
220k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Visualization
eitanlees
148
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Speed Design
sergeychernyshev
32
1.1k
Gamification - CAS2011
davidbonilla
81
5.5k
Transcript
Vendure Developer Day / December 9th 2023 Miroslav Jonaš /
@meeroslav Scaling with
None
Final boss
Final boss of web development
Final boss of web development
Final boss of web development
Small webshop Large enterprise corporation Day 1 After 1 year
None
None
Small webshop Large enterprise corporation Day 1 After 1 year
Small webshop Large enterprise corporation Day 1 After 1 year
Miroslav Jonaš @meeroslav
Storefront (framework X) Every large application* UI Components
/ Design system Vendure server Plugin 1 Plugin 2 Plugin 3 Plugin 4 Plugin 5 Plugin 6 Plugin 7
Storefront (framework X) Vendure server Every large application* UI
Components / Design system Plugin 1 Plugin 2 Plugin 3 Plugin 4 Plugin 5 Plugin 6 Plugin 7 Admin UI Mobile App Utility v1 v3 v2_beta v1.0.1 ~2.15.0 > 3.0.0
None
Collocate Storefront (framework X) Vendure server UI Components
/ Design system Plugin 1 Plugin 2 Plugin 3 Plugin 4 Plugin 5 Plugin 6 Plugin 7 Admin UI Mobile App Utility
Code sharing Storefront Admin UI Auth
Affected graph admin store api
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
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 Instant replay from cache
Distributed task execution
Distributed task execution
Code constraints
Code constraints store checkout sales coupons core shared admin
But I have just a small shop…
> npx @vendure/create my-store
Imagine… > npx create-nx-workspace my-store --preset=@vendure/nx
But then… > nx g @vendure/nx:storefront my-web --framework=qwik
Or… > nx g @vendure/nx:plugin my-plugin
How about… > nx g @vendure/nx:convert-database my-store -d mssql
No more updateophobia… > nx g migrate @vendure/nx@latest
Full IDE support
2024
Ask not what Vendure can do for you - ask
what you can do for Vendure
Vendure Developer Day / December 9th 2023 Miroslav Jonaš /
@meeroslav Thank you! +