SlideShare a Scribd company logo
1 of 39
Download to read offline
Modernizing Vue Storefront 1
Yireo - Modernizing Vue Storefront 1 1 of 14
Jisse Reitsma
Yireo - Modernizing Vue Storefront 1 2 of 14
Jisse Reitsma
Owner of Yireo
Yireo - Modernizing Vue Storefront 1 2 of 14
Jisse Reitsma
Owner of Yireo
Extension developer
Yireo - Modernizing Vue Storefront 1 2 of 14
Jisse Reitsma
Owner of Yireo
Extension developer
Trainer of developers
Yireo - Modernizing Vue Storefront 1 2 of 14
Jisse Reitsma
Owner of Yireo
Extension developer
Trainer of developers
3x Magento Master
Yireo - Modernizing Vue Storefront 1 2 of 14
Jisse Reitsma
Owner of Yireo
Extension developer
Trainer of developers
3x Magento Master
Organizer of Reacticon and MageTestFest
3 times Reacticon
2 times MageTestFest
Yireo - Modernizing Vue Storefront 1 2 of 14
Reacticon 4
Frontend developer conference
Magento Hyva Themes, PWA Studio, Vue Storefront 1
Shopware PWA and other headless alternatives
Discussions, talks, hangouts, fun
June 14th-18th 2021
Free attendance
Slack space
YouTube livestream
See reacticon.org 
Yireo - Modernizing Vue Storefront 1 3 of 14
Vue Storefront 1 On-Demand training
9.5 hours of videos
300+ pages of text
More coming up
Additional topics on VSF1
Also new courses on Magento PWA Studio, VSF Next and more
See yireo.com/vue 
Yireo - Modernizing Vue Storefront 1 4 of 14
What about Vue Storefront Next?
Yireo - Modernizing Vue Storefront 1 5 of 14
What about Vue Storefront Next?
Nuxt.js based
Yireo - Modernizing Vue Storefront 1 5 of 14
What about Vue Storefront Next?
Nuxt.js based
Supported platforms
CommerceTools
Shopify (thanks to Aureate)
Shopware (as Shopware PWA)
...
Yireo - Modernizing Vue Storefront 1 5 of 14
What about Vue Storefront Next?
Nuxt.js based
Supported platforms
CommerceTools
Shopify (thanks to Aureate)
Shopware (as Shopware PWA)
...
No Magento support
Yireo - Modernizing Vue Storefront 1 5 of 14
What about Vue Storefront Next?
Nuxt.js based
Supported platforms
CommerceTools
Shopify (thanks to Aureate)
Shopware (as Shopware PWA)
...
No Magento support
But Vue Storefront 1 is not dead yet
Thanks to Filip Jedrasik
Yireo - Modernizing Vue Storefront 1 5 of 14
Capybara
Yireo - Modernizing Vue Storefront 1 6 of 14
Capybara
Do not use Default Theme
Use Capybara
Yireo - Modernizing Vue Storefront 1 6 of 14
Capybara
Do not use Default Theme
Use Capybara
Do not copy an entire theme
Use parent/child theming
Yireo - Modernizing Vue Storefront 1 6 of 14
Capybara
Do not use Default Theme
Use Capybara
Do not copy an entire theme
Use parent/child theming
Add Storefront UI elements where you want
VSF Next is based on Storefront UI too
Presentational components will keep on working (mostly)
Yireo - Modernizing Vue Storefront 1 6 of 14
Parent & Child theming
Yireo - Modernizing Vue Storefront 1 7 of 14
Parent & Child theming
Do not copy les
Yireo - Modernizing Vue Storefront 1 7 of 14
Parent & Child theming
Do not copy les
Use Webpack!
Yireo - Modernizing Vue Storefront 1 7 of 14
Parent & Child theming
Do not copy les
Use Webpack!
Example: yireo-training/vsf-yireo-theme
Yireo - Modernizing Vue Storefront 1 7 of 14
Parent & Child theming
Do not copy les
Use Webpack!
Example: yireo-training/vsf-yireo-theme
Based on yireo/vsf1-webpack-inheritance-plugin
Yireo - Modernizing Vue Storefront 1 7 of 14
Slow compilation?
Yireo - Modernizing Vue Storefront 1 8 of 14
Slow compilation?
Skip SSR compilation
Yireo - Modernizing Vue Storefront 1 8 of 14
Slow compilation?
Skip SSR compilation
Use Webpack!
Yireo - Modernizing Vue Storefront 1 8 of 14
Slow compilation?
Skip SSR compilation
Use Webpack!
Example: yireo-training/vsf1-local-webpack
Yireo - Modernizing Vue Storefront 1 8 of 14
Override speci c les
Do not hack the core
Use Webpack!
File src/themes/capybara/webpack.config.js
...
const mergedConfig = merge(
{
resolve: {
alias: { 'src/modules/client': `${themeRoot}/config/modules` }
}
},
config,
clientConfig
);
...
Yireo - Modernizing Vue Storefront 1 9 of 14
Stay up to date
VSF1 is still optimized with small releases
Keep an eye on Github repos
Small xes matter
Copy changes manually, cherrypick commits
Do not just patiently wait for a new o cial release
Yireo - Modernizing Vue Storefront 1 10 of 14
Use Storybook
Yireo - Modernizing Vue Storefront 1 11 of 14
Use Storybook
Draft a simple style tile (or mood board or whatever)
Plain Vue app without dynamic behaviour
Add Storefront UI as a Node dependency
Add all HTML / CSS output and make sure it looks good
Yireo - Modernizing Vue Storefront 1 11 of 14
Use Storybook
Draft a simple style tile (or mood board or whatever)
Plain Vue app without dynamic behaviour
Add Storefront UI as a Node dependency
Add all HTML / CSS output and make sure it looks good
Move Vue components into Storybook
Maintain your own UIComponents along-side your VSF project
Yireo - Modernizing Vue Storefront 1 11 of 14
Composition API
Install the Composition API plugin for Vue 2
Add your own composables for logic
Local state
Vuex bindings
GraphQL calls
Yireo - Modernizing Vue Storefront 1 12 of 14
Other considerations
Yireo - Modernizing Vue Storefront 1 13 of 14
Other considerations
A theme is just some HTML and CSS
Use Tailwind, Material, whatever
Yireo - Modernizing Vue Storefront 1 13 of 14
Other considerations
A theme is just some HTML and CSS
Use Tailwind, Material, whatever
Separate logic from output
Presentational vs stateful components
Yireo - Modernizing Vue Storefront 1 13 of 14
Other considerations
A theme is just some HTML and CSS
Use Tailwind, Material, whatever
Separate logic from output
Presentational vs stateful components
Tryout the GraphQL binding
Switch from ElasticSearch to GraphQL (SF Query Builder)
But beware of the performance!
Yireo - Modernizing Vue Storefront 1 13 of 14
Other considerations
A theme is just some HTML and CSS
Use Tailwind, Material, whatever
Separate logic from output
Presentational vs stateful components
Tryout the GraphQL binding
Switch from ElasticSearch to GraphQL (SF Query Builder)
But beware of the performance!
Use the new Storefront API instead of VSF1 API
Some integration of Apollo Server (with GraphQL caching support)
Yireo - Modernizing Vue Storefront 1 13 of 14
Thanks
@jissereitsma
Yireo - Modernizing Vue Storefront 1 14 of 14

More Related Content

Similar to Modernizing Vue Storefront 1

Mvvm is like born fraction
Mvvm is like born fractionMvvm is like born fraction
Mvvm is like born fractionKen Haneda
 
Hyvä from a developer perspective
Hyvä from a developer perspectiveHyvä from a developer perspective
Hyvä from a developer perspectivevinaikopp
 
Angular + JHipster - JHipster Conf
Angular + JHipster - JHipster ConfAngular + JHipster - JHipster Conf
Angular + JHipster - JHipster ConfWilliam Marques
 
Tipping the Scale - Eyal Eizenberg
Tipping the Scale - Eyal EizenbergTipping the Scale - Eyal Eizenberg
Tipping the Scale - Eyal EizenbergWix Engineering
 
JS Fest 2019/Autumn. Eyal Eizenberg. Tipping the Scale
JS Fest 2019/Autumn. Eyal Eizenberg. Tipping the ScaleJS Fest 2019/Autumn. Eyal Eizenberg. Tipping the Scale
JS Fest 2019/Autumn. Eyal Eizenberg. Tipping the ScaleJSFestUA
 
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...Gavin Pickin
 
Developing Java Web Applications
Developing Java Web ApplicationsDeveloping Java Web Applications
Developing Java Web Applicationshchen1
 
Game changer for e-commerce - Vue Storefront - open source pwa
Game changer for e-commerce - Vue Storefront - open source pwa Game changer for e-commerce - Vue Storefront - open source pwa
Game changer for e-commerce - Vue Storefront - open source pwa Divante
 
Flutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textFlutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textToma Velev
 
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...Ortus Solutions, Corp
 
Edmonds Commerce Magento Presentation
Edmonds Commerce Magento PresentationEdmonds Commerce Magento Presentation
Edmonds Commerce Magento PresentationEdmonds Commerce
 
Lecture 11 - Web components
Lecture 11 - Web componentsLecture 11 - Web components
Lecture 11 - Web componentsBryan Ollendyke
 
What's cool in Apache MyFaces?
What's cool in Apache MyFaces?What's cool in Apache MyFaces?
What's cool in Apache MyFaces?aliok
 
Production optimization with React and Webpack
Production optimization with React and WebpackProduction optimization with React and Webpack
Production optimization with React and Webpackk88hudson
 
Passionate People Meetup - React vs Vue with a deepdive into Proxies
Passionate People Meetup - React vs Vue with a deepdive into ProxiesPassionate People Meetup - React vs Vue with a deepdive into Proxies
Passionate People Meetup - React vs Vue with a deepdive into ProxiesHarijs Deksnis
 
Vuejs for Angular developers
Vuejs for Angular developersVuejs for Angular developers
Vuejs for Angular developersMikhail Kuznetcov
 
Behavior & Specification Driven Development in PHP - #OpenWest
Behavior & Specification Driven Development in PHP - #OpenWestBehavior & Specification Driven Development in PHP - #OpenWest
Behavior & Specification Driven Development in PHP - #OpenWestJoshua Warren
 
Building our Component Library
Building our Component LibraryBuilding our Component Library
Building our Component LibraryClement Ho
 

Similar to Modernizing Vue Storefront 1 (20)

The State of Wicket
The State of WicketThe State of Wicket
The State of Wicket
 
Mvvm is like born fraction
Mvvm is like born fractionMvvm is like born fraction
Mvvm is like born fraction
 
Hyvä from a developer perspective
Hyvä from a developer perspectiveHyvä from a developer perspective
Hyvä from a developer perspective
 
Angular + JHipster - JHipster Conf
Angular + JHipster - JHipster ConfAngular + JHipster - JHipster Conf
Angular + JHipster - JHipster Conf
 
Tipping the Scale - Eyal Eizenberg
Tipping the Scale - Eyal EizenbergTipping the Scale - Eyal Eizenberg
Tipping the Scale - Eyal Eizenberg
 
JS Fest 2019/Autumn. Eyal Eizenberg. Tipping the Scale
JS Fest 2019/Autumn. Eyal Eizenberg. Tipping the ScaleJS Fest 2019/Autumn. Eyal Eizenberg. Tipping the Scale
JS Fest 2019/Autumn. Eyal Eizenberg. Tipping the Scale
 
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
 
Developing Java Web Applications
Developing Java Web ApplicationsDeveloping Java Web Applications
Developing Java Web Applications
 
Game changer for e-commerce - Vue Storefront - open source pwa
Game changer for e-commerce - Vue Storefront - open source pwa Game changer for e-commerce - Vue Storefront - open source pwa
Game changer for e-commerce - Vue Storefront - open source pwa
 
Flutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textFlutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - text
 
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
 
Edmonds Commerce Magento Presentation
Edmonds Commerce Magento PresentationEdmonds Commerce Magento Presentation
Edmonds Commerce Magento Presentation
 
Lecture 11 - Web components
Lecture 11 - Web componentsLecture 11 - Web components
Lecture 11 - Web components
 
What's cool in Apache MyFaces?
What's cool in Apache MyFaces?What's cool in Apache MyFaces?
What's cool in Apache MyFaces?
 
Production optimization with React and Webpack
Production optimization with React and WebpackProduction optimization with React and Webpack
Production optimization with React and Webpack
 
Passionate People Meetup - React vs Vue with a deepdive into Proxies
Passionate People Meetup - React vs Vue with a deepdive into ProxiesPassionate People Meetup - React vs Vue with a deepdive into Proxies
Passionate People Meetup - React vs Vue with a deepdive into Proxies
 
Vuejs for Angular developers
Vuejs for Angular developersVuejs for Angular developers
Vuejs for Angular developers
 
Behavior & Specification Driven Development in PHP - #OpenWest
Behavior & Specification Driven Development in PHP - #OpenWestBehavior & Specification Driven Development in PHP - #OpenWest
Behavior & Specification Driven Development in PHP - #OpenWest
 
Universal React apps in Next.js
Universal React apps in Next.jsUniversal React apps in Next.js
Universal React apps in Next.js
 
Building our Component Library
Building our Component LibraryBuilding our Component Library
Building our Component Library
 

More from Yireo

Faster Magento Integration Tests
Faster Magento Integration TestsFaster Magento Integration Tests
Faster Magento Integration TestsYireo
 
Mage-OS Nederland
Mage-OS NederlandMage-OS Nederland
Mage-OS NederlandYireo
 
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshopMagento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshopYireo
 
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Yireo
 
Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Yireo
 
Magento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningMagento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningYireo
 
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishMagento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishYireo
 
Magento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyMagento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyYireo
 
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenMagento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenYireo
 
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Yireo
 
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationMagento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationYireo
 
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaMagento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaYireo
 
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 ShopsMagento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 ShopsYireo
 
Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Yireo
 
Magento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryMagento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryYireo
 
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksMagento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksYireo
 
Magento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteMagento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteYireo
 
Magento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaMagento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaYireo
 
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningMagento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningYireo
 
Magento 2 Seminar - Welkom
Magento 2 Seminar - WelkomMagento 2 Seminar - Welkom
Magento 2 Seminar - WelkomYireo
 

More from Yireo (20)

Faster Magento Integration Tests
Faster Magento Integration TestsFaster Magento Integration Tests
Faster Magento Integration Tests
 
Mage-OS Nederland
Mage-OS NederlandMage-OS Nederland
Mage-OS Nederland
 
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshopMagento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
 
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
 
Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2
 
Magento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningMagento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learning
 
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishMagento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
 
Magento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyMagento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App Economy
 
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenMagento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
 
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
 
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationMagento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
 
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaMagento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
 
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 ShopsMagento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
 
Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2
 
Magento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryMagento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 Summary
 
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksMagento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
 
Magento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteMagento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - Keynote
 
Magento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaMagento 2 Seminar - Community agenda
Magento 2 Seminar - Community agenda
 
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningMagento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
 
Magento 2 Seminar - Welkom
Magento 2 Seminar - WelkomMagento 2 Seminar - Welkom
Magento 2 Seminar - Welkom
 

Recently uploaded

QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 

Recently uploaded (20)

QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 

Modernizing Vue Storefront 1

  • 1. Modernizing Vue Storefront 1 Yireo - Modernizing Vue Storefront 1 1 of 14
  • 2. Jisse Reitsma Yireo - Modernizing Vue Storefront 1 2 of 14
  • 3. Jisse Reitsma Owner of Yireo Yireo - Modernizing Vue Storefront 1 2 of 14
  • 4. Jisse Reitsma Owner of Yireo Extension developer Yireo - Modernizing Vue Storefront 1 2 of 14
  • 5. Jisse Reitsma Owner of Yireo Extension developer Trainer of developers Yireo - Modernizing Vue Storefront 1 2 of 14
  • 6. Jisse Reitsma Owner of Yireo Extension developer Trainer of developers 3x Magento Master Yireo - Modernizing Vue Storefront 1 2 of 14
  • 7. Jisse Reitsma Owner of Yireo Extension developer Trainer of developers 3x Magento Master Organizer of Reacticon and MageTestFest 3 times Reacticon 2 times MageTestFest Yireo - Modernizing Vue Storefront 1 2 of 14
  • 8. Reacticon 4 Frontend developer conference Magento Hyva Themes, PWA Studio, Vue Storefront 1 Shopware PWA and other headless alternatives Discussions, talks, hangouts, fun June 14th-18th 2021 Free attendance Slack space YouTube livestream See reacticon.org  Yireo - Modernizing Vue Storefront 1 3 of 14
  • 9. Vue Storefront 1 On-Demand training 9.5 hours of videos 300+ pages of text More coming up Additional topics on VSF1 Also new courses on Magento PWA Studio, VSF Next and more See yireo.com/vue  Yireo - Modernizing Vue Storefront 1 4 of 14
  • 10. What about Vue Storefront Next? Yireo - Modernizing Vue Storefront 1 5 of 14
  • 11. What about Vue Storefront Next? Nuxt.js based Yireo - Modernizing Vue Storefront 1 5 of 14
  • 12. What about Vue Storefront Next? Nuxt.js based Supported platforms CommerceTools Shopify (thanks to Aureate) Shopware (as Shopware PWA) ... Yireo - Modernizing Vue Storefront 1 5 of 14
  • 13. What about Vue Storefront Next? Nuxt.js based Supported platforms CommerceTools Shopify (thanks to Aureate) Shopware (as Shopware PWA) ... No Magento support Yireo - Modernizing Vue Storefront 1 5 of 14
  • 14. What about Vue Storefront Next? Nuxt.js based Supported platforms CommerceTools Shopify (thanks to Aureate) Shopware (as Shopware PWA) ... No Magento support But Vue Storefront 1 is not dead yet Thanks to Filip Jedrasik Yireo - Modernizing Vue Storefront 1 5 of 14
  • 15. Capybara Yireo - Modernizing Vue Storefront 1 6 of 14
  • 16. Capybara Do not use Default Theme Use Capybara Yireo - Modernizing Vue Storefront 1 6 of 14
  • 17. Capybara Do not use Default Theme Use Capybara Do not copy an entire theme Use parent/child theming Yireo - Modernizing Vue Storefront 1 6 of 14
  • 18. Capybara Do not use Default Theme Use Capybara Do not copy an entire theme Use parent/child theming Add Storefront UI elements where you want VSF Next is based on Storefront UI too Presentational components will keep on working (mostly) Yireo - Modernizing Vue Storefront 1 6 of 14
  • 19. Parent & Child theming Yireo - Modernizing Vue Storefront 1 7 of 14
  • 20. Parent & Child theming Do not copy les Yireo - Modernizing Vue Storefront 1 7 of 14
  • 21. Parent & Child theming Do not copy les Use Webpack! Yireo - Modernizing Vue Storefront 1 7 of 14
  • 22. Parent & Child theming Do not copy les Use Webpack! Example: yireo-training/vsf-yireo-theme Yireo - Modernizing Vue Storefront 1 7 of 14
  • 23. Parent & Child theming Do not copy les Use Webpack! Example: yireo-training/vsf-yireo-theme Based on yireo/vsf1-webpack-inheritance-plugin Yireo - Modernizing Vue Storefront 1 7 of 14
  • 24. Slow compilation? Yireo - Modernizing Vue Storefront 1 8 of 14
  • 25. Slow compilation? Skip SSR compilation Yireo - Modernizing Vue Storefront 1 8 of 14
  • 26. Slow compilation? Skip SSR compilation Use Webpack! Yireo - Modernizing Vue Storefront 1 8 of 14
  • 27. Slow compilation? Skip SSR compilation Use Webpack! Example: yireo-training/vsf1-local-webpack Yireo - Modernizing Vue Storefront 1 8 of 14
  • 28. Override speci c les Do not hack the core Use Webpack! File src/themes/capybara/webpack.config.js ... const mergedConfig = merge( { resolve: { alias: { 'src/modules/client': `${themeRoot}/config/modules` } } }, config, clientConfig ); ... Yireo - Modernizing Vue Storefront 1 9 of 14
  • 29. Stay up to date VSF1 is still optimized with small releases Keep an eye on Github repos Small xes matter Copy changes manually, cherrypick commits Do not just patiently wait for a new o cial release Yireo - Modernizing Vue Storefront 1 10 of 14
  • 30. Use Storybook Yireo - Modernizing Vue Storefront 1 11 of 14
  • 31. Use Storybook Draft a simple style tile (or mood board or whatever) Plain Vue app without dynamic behaviour Add Storefront UI as a Node dependency Add all HTML / CSS output and make sure it looks good Yireo - Modernizing Vue Storefront 1 11 of 14
  • 32. Use Storybook Draft a simple style tile (or mood board or whatever) Plain Vue app without dynamic behaviour Add Storefront UI as a Node dependency Add all HTML / CSS output and make sure it looks good Move Vue components into Storybook Maintain your own UIComponents along-side your VSF project Yireo - Modernizing Vue Storefront 1 11 of 14
  • 33. Composition API Install the Composition API plugin for Vue 2 Add your own composables for logic Local state Vuex bindings GraphQL calls Yireo - Modernizing Vue Storefront 1 12 of 14
  • 34. Other considerations Yireo - Modernizing Vue Storefront 1 13 of 14
  • 35. Other considerations A theme is just some HTML and CSS Use Tailwind, Material, whatever Yireo - Modernizing Vue Storefront 1 13 of 14
  • 36. Other considerations A theme is just some HTML and CSS Use Tailwind, Material, whatever Separate logic from output Presentational vs stateful components Yireo - Modernizing Vue Storefront 1 13 of 14
  • 37. Other considerations A theme is just some HTML and CSS Use Tailwind, Material, whatever Separate logic from output Presentational vs stateful components Tryout the GraphQL binding Switch from ElasticSearch to GraphQL (SF Query Builder) But beware of the performance! Yireo - Modernizing Vue Storefront 1 13 of 14
  • 38. Other considerations A theme is just some HTML and CSS Use Tailwind, Material, whatever Separate logic from output Presentational vs stateful components Tryout the GraphQL binding Switch from ElasticSearch to GraphQL (SF Query Builder) But beware of the performance! Use the new Storefront API instead of VSF1 API Some integration of Apollo Server (with GraphQL caching support) Yireo - Modernizing Vue Storefront 1 13 of 14
  • 39. Thanks @jissereitsma Yireo - Modernizing Vue Storefront 1 14 of 14