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
46
Scaling Vendure with Nx
Miroslav Jonaš
December 09, 2023
Tweet
Share
More Decks by Miroslav Jonaš
See All by Miroslav Jonaš
Don't let compilation set the length of your Glühwein break
meeroslav
0
45
Vanquishing deployment dragons with Nx wizardry
meeroslav
0
120
Don't let compilation set the length of your coffee break
meeroslav
0
44
The other JavaScript performance (no one is talking about)
meeroslav
0
180
Age of monorepos (NgDe)
meeroslav
0
120
Age of monorepos (Armada JS 2022)
meeroslav
0
170
The Age of monorepos (JSNation)
meeroslav
1
200
Nx - The Obvious Choice
meeroslav
0
180
The Age of monorepos
meeroslav
0
190
Other Decks in Programming
See All in Programming
GraphQL あるいは React における自律的なデータ取得について
quramy
11
2.7k
What is Parser
yui_knk
9
4k
Rubyとクリエイティブコーディングの輪の広がり / The Growing Circle of Ruby and Creative Coding
chobishiba
1
240
LangChainの現在とv0.3にむけて
os1ma
4
810
RAGの回答精度評価用のQAデータセットを生成AIに作らせた話
kurahara
0
240
LangGraphでのHuman-in-the-Loopの実装
os1ma
3
970
メモリ最適化を究める!iOSアプリ開発における5つの重要なポイント
yhirakawa333
0
400
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
3
120
2024 컴포즈 정원사
jisungbin
0
150
Mastering AsyncSequence - 使う・作る・他のデザインパターン(クロージャ、Delegate など)から移行する
treastrain
4
1.5k
長期運用プロダクトの開発速度を維持し続けるためのリファクタリング実践例
wataruss
8
2.6k
Go Code Generation at newmo / 2024-08-27 #newmo_layerx_go
genkey6
0
550
Featured
See All Featured
Unsuck your backbone
ammeep
667
57k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
Web Components: a chance to create the future
zenorocha
308
41k
The Straight Up "How To Draw Better" Workshop
denniskardys
230
130k
The Invisible Customer
myddelton
119
13k
Bootstrapping a Software Product
garrettdimon
PRO
304
110k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
354
29k
Code Review Best Practice
trishagee
62
16k
Fantastic passwords and where to find them - at NoRuKo
philnash
48
2.8k
In The Pink: A Labor of Love
frogandcode
139
22k
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! +