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
100
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
4
Drum 'n' JS
meeroslav
0
18
Monorepo demystified: Breaking the myth
meeroslav
0
9
Making the Argument for Monorepos
meeroslav
0
6
Don't let compilation set the length of your Glühwein break
meeroslav
0
61
Vanquishing deployment dragons with Nx wizardry
meeroslav
0
180
Don't let compilation set the length of your coffee break
meeroslav
0
80
The other JavaScript performance (no one is talking about)
meeroslav
0
250
Age of monorepos (NgDe)
meeroslav
0
180
Other Decks in Programming
See All in Programming
A comprehensive view of refactoring
marabesi
0
140
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
110
Rails産でないDBを Railsに引っ越すHACK - Omotesando.rb #110
lnit
1
160
カクヨムAndroidアプリのリブート
numeroanddev
0
410
FormFlow - Build Stunning Multistep Forms
yceruto
1
160
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
140
Javaのルールをねじ曲げろ!禁断の操作とその代償から学ぶメタプログラミング入門 / A Guide to Metaprogramming: Lessons from Forbidden Techniques and Their Price
nrslib
3
1.9k
インターフェース設計のコツとツボ
togishima
2
710
Java on Azure で LangGraph!
kohei3110
0
110
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
220
AIエージェントによるテストフレームワーク Arbigent
takahirom
0
370
人には人それぞれのサービス層がある
shimabox
3
670
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.9k
Fireside Chat
paigeccino
37
3.5k
How to train your dragon (web standard)
notwaldorf
92
6.1k
Automating Front-end Workflow
addyosmani
1370
200k
Navigating Team Friction
lara
186
15k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Reflections from 52 weeks, 52 projects
jeffersonlam
350
20k
Balancing Empowerment & Direction
lara
1
290
Scaling GitHub
holman
459
140k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
KATA
mclloyd
29
14k
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! +