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
80
Scaling Vendure with Nx
Miroslav Jonaš
December 09, 2023
Tweet
Share
More Decks by Miroslav Jonaš
See All by Miroslav Jonaš
Drum 'n' JS
meeroslav
0
4
Monorepo demystified: Breaking the myth
meeroslav
0
2
Making the Argument for Monorepos
meeroslav
0
1
Don't let compilation set the length of your Glühwein break
meeroslav
0
51
Vanquishing deployment dragons with Nx wizardry
meeroslav
0
160
Don't let compilation set the length of your coffee break
meeroslav
0
65
The other JavaScript performance (no one is talking about)
meeroslav
0
230
Age of monorepos (NgDe)
meeroslav
0
160
Age of monorepos (Armada JS 2022)
meeroslav
0
210
Other Decks in Programming
See All in Programming
Ruby on cygwin 2025-02
fd0
0
140
Rubyで始める関数型ドメインモデリング
shogo_tksk
0
110
Conform を推す - Advocating for Conform
mizoguchicoji
3
690
Unity Android XR入門
sakutama_11
0
160
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
120
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
560
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
120
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
250
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
140
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
120
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
590
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Documentation Writing (for coders)
carmenintech
67
4.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Automating Front-end Workflow
addyosmani
1368
200k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to Ace a Technical Interview
jacobian
276
23k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
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! +