Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
140
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
27
Drum 'n' JS
meeroslav
0
43
Monorepo demystified: Breaking the myth
meeroslav
0
28
Making the Argument for Monorepos
meeroslav
0
26
Don't let compilation set the length of your Glühwein break
meeroslav
0
80
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
Age of monorepos (NgDe)
meeroslav
0
220
Other Decks in Programming
See All in Programming
TestingOsaka6_Ozono
o3
0
170
エディターってAIで操作できるんだぜ
kis9a
0
740
FluorTracer / RayTracingCamp11
kugimasa
0
240
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
510
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
950
Github Copilotのチャット履歴ビューワーを作りました~WPF、dotnet10もあるよ~ #clrh111
katsuyuzu
0
120
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
740
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
150
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
10
2.5k
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
140
Microservices rules: What good looks like
cer
PRO
0
1.6k
AIコーディングエージェント(skywork)
kondai24
0
190
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.3k
A Modern Web Designer's Workflow
chriscoyier
698
190k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandezseo
1
1.3k
Speed Design
sergeychernyshev
33
1.4k
ラッコキーワード サービス紹介資料
rakko
0
1.7M
How to Talk to Developers About Accessibility
jct
1
81
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
22
Faster Mobile Websites
deanohume
310
31k
Raft: Consensus for Rubyists
vanstee
141
7.2k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
39
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
130
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! +