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
110
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
12
Drum 'n' JS
meeroslav
0
25
Monorepo demystified: Breaking the myth
meeroslav
0
15
Making the Argument for Monorepos
meeroslav
0
11
Don't let compilation set the length of your Glühwein break
meeroslav
0
67
Vanquishing deployment dragons with Nx wizardry
meeroslav
0
190
Don't let compilation set the length of your coffee break
meeroslav
0
94
The other JavaScript performance (no one is talking about)
meeroslav
0
260
Age of monorepos (NgDe)
meeroslav
0
190
Other Decks in Programming
See All in Programming
PHPカンファレンス関西2025 基調講演
sugimotokei
6
1.1k
AI Ramen Fight
yusukebe
0
130
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
340
JetBrainsのAI機能の紹介 #jjug
yusuke
0
190
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
250
No Install CMS戦略 〜 5年先を見据えたフロントエンド開発を考える / no_install_cms
rdlabo
0
470
Gemini CLIの"強み"を知る! Gemini CLIとClaude Codeを比較してみた!
kotahisafuru
3
960
STUNMESH-go: Wireguard NAT穿隧工具的源起與介紹
tjjh89017
0
290
Claude Code で Astro blog を Pages から Workers へ移行してみた
codehex
0
180
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.5k
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
950
あまり知られていない MCP 仕様たち / MCP specifications that aren’t widely known
ktr_0731
0
240
Featured
See All Featured
Navigating Team Friction
lara
188
15k
Side Projects
sachag
455
43k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
440
Unsuck your backbone
ammeep
671
58k
Designing for Performance
lara
610
69k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Music & Morning Musume
bryan
46
6.7k
Practical Orchestrator
shlominoach
190
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.7k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
750
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! +