SlideShare une entreprise Scribd logo
1  sur  39
Télécharger pour lire hors ligne
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

Contenu connexe

Similaire à Modernizing Vue Storefront 1

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
 
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
Joshua Warren
 

Similaire à 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
 

Plus de Yireo

Plus de 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
 

Dernier

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 

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