Yireo - Developer training

Open main menu

Shopware PWA

Customize this Vue-based headless frontend at will

Customize this Vue-based headless frontend at will

Shopware PWA offers a headless frontend for Shopware 6, based on the Vue Storefront Next framework. Thanks to Vue, customizing components both in look & feel and in functionality becomes a breeze. This training gives you a deep dive on how to practically get started with your Shopware 6 PWA frontend.

Jisse Reitsma

Jisse Reitsma is your teacher and guide

This training will be held with Jisse Reitsma as your guide. Jisse is the founder of Yireo, trainer and author. He is one of those Magento developers crossing over to Shopware. And with that, he brings a wealth of enterprise e-commerce experience with him. He has already helped out the Shopware community with free developer videos, is active in the Vue Storefront community, works actively with Symfony. Want to learn more about Shopware 6? Jisse is there to help you out!

Pick the learning method that fits you best

Because everyone has different needs


On Demand

  • Full access to this course with 86 lessons with 14+ hours of video
  • Student notes (431+ pages)
  • Learn at your own pace
for 1 year
per individual


  • On-Demand package of this course
  • Teacher support via email & slack
  • Prioritized requests for new lessons
  • Get the personalized help that you need
for 1 year
per individual


  • On-Demand package of this course
  • Economical for groups of 5 and more
  • Freely debate company-specific topics
  • Online or on-site at your company

Custom price

per training day
per agency

There are no scheduled live trainings available

At this moment, there are no trainings scheduled in our agenda. However, we are always busy with planning more, so make sure to check out our online agenda. Alternatively, checkout our on-demand content or feel free to contact us for a custom in-company training.

Current video lessons in one single view

We are constantly updating our courseware, but the following is a real-life snapshot

Vocabulary   04m 33s
Introducing Shopware PWAfree07m 04s
Development tools   06m 20s
Shopware PWA installationfree27m 47s
Configuration   11m 17s
Configuration of domains   07m 58s
Main commands   12m 37s
Different modes for going to production   09m 13s
`shopware-pwa plugins` command   06m 35s
Package overview   04m 40s
Combined sources   03m 44s
Vue basics   15m 12s
Simple counter   08m 50s
Dynamic listing   13m 12s
Composition API   16m 55s
Simple counter with the Composition API   07m 45s
`ref`, `reactive`, `computed` and `toRef`   14m 16s
Composables in Shopware PWAfree08m 18s
Watching values   04m 25s
Dealing with Vue slots   18m 37s
Vue state management   13m 27s
Vue partials   n/a
Provide and inject   n/a
Introduction of NuxtJSfree04m 49s
Installing NuxtJS   06m 06s
Nuxt.js themingfree13m 56s
Nuxt.js architecture   07m 08s
NuxtJS configuration   09m 45s
Nuxt.js modules   14m 25s
NuxtJS plugins   17m 46s
Customize routing   12m 01s
NuxtJS content module   n/a
Nuxt middleware   n/a
First steps into Shopware PWA theming   10m 13s
Possible modifications   n/a
Creating layouts   07m 40s
View components   21m 25s
Overriding a componentfree09m 04s
Changing the logo   n/a
Working with Storefront UI   18m 50s
Override the footer   29m 42s
CSS styling   14m 10s
Adding Google fonts   06m 40s
Overriding Storefront UI components   07m 58s
Change meta-data   14m 20s
Creating a local pluginfree13m 22s
Using Shopware plugins in the PWA   32m 07s
Creating a Shopware plugin for PWA   13m 46s
Working with PWA slots   09m 13s
Extend the navigation menu   25m 13s
Adding layouts and pages via your PWA plugin   07m 47s
Overriding remote PWA plugins   09m 27s
Using settings in your plugin   20m 23s
Interacting with the Shopware APIs   16m 25s
shopware.stoplight.io   02m 18s
Examples of using the Store API   19m 19s
Setting API defaults   16m 10s
Using the API   21m 21s
Creating a Store API Route   30m 18s
First peek at CMS architecturefree21m 17s
Analysing the resource type   n/a
Overriding a CMS Block   11m 28s
Overriding a CMS Element   10m 16s
CMS Jumbotron example   25m 40s
Customizing the category page   06m 06s
Customizing the product page   27m 21s
Using product functions   37m 29s
A custom error page   n/a
Checkout overview   15m 31s
disable-cart-notifications   n/a
Interceptors   n/a
Creating custom composables   n/a
shopware-pwa domains   n/a
The ServiceWorker   n/a
snippets   n/a
Using Shopware PWA without Storefront UI   n/a
Deployment   10m 45s
AJAX calls with SSR   19m 13s
Adding the right context   n/a
Deployment with SSG   n/a
Dealing with SSR   n/a
Development performance   n/a
SSR caching via Redis   n/a
Building a PWA without Shopware PWA   09m 48s
Troubleshooting   n/a
Best practices   n/a

These videos are available as an On-Demand video training (with notes). See the pricing for details.

These are the options we give you:

At your place or ours?

Everyone learns at her/his own pace. We provide both in-house training and public training throughout Europe - whatever suits your team best. When 3 or more developers are attending, a custom training is often more economical. Contact us for more details.

You'll get courseware

Every workshop is accompanied with official Yireo coursematerial. Attendees are sent a digital version of this material after the training. It contains slides, comments and references. Additionally, our GitHub repos contain numerous more code samples.

Online classrooms

Online trainings are also our training: Via Zoom or Google Hangout sessions, our teacher is able to connect with your team. The benefit here is that the team is able to connect from various places itself as well, timeframes are more flexible. Afterwards, a video recording will be shared with all attendees for reference.

On-demand self-paced training

This training is also available as an On-Demand training: Via numerous video lessons, including accompanying student notes (equalling a book on their own), you'll learn about the topics in your own pace. And when you bump into questions, you can fall back to the teachers guidance.

Why Yireo?

  • Professional trainings at affordable prices
  • Active with numerous open source projects
  • Passionate, enthousiastic, knowledgable

We have trained 5000+ developers in numerous disciplines since 2005

Training topics

  • Vocabulary
  • Introducing Shopware PWA
  • Development tools
  • Shopware PWA installation
  • Configuration
  • Configuration of domains
  • Main commands
  • Different modes for going to production
  • `shopware-pwa plugins` command
  • Package overview
  • Combined sources
  • Vue basics
  • Simple counter
  • Dynamic listing
  • Composition API
  • Simple counter with the Composition API
  • `ref`, `reactive`, `computed` and `toRef`
  • Composables in Shopware PWA
  • Watching values
  • Dealing with Vue slots
  • Vue state management
  • Vue partials
  • Provide and inject
  • Introduction of NuxtJS
  • Installing NuxtJS
  • Nuxt.js theming
  • Nuxt.js architecture
  • NuxtJS configuration
  • Nuxt.js modules
  • NuxtJS plugins
  • Customize routing
  • NuxtJS content module
  • Nuxt middleware
  • First steps into Shopware PWA theming
  • Possible modifications
  • Creating layouts
  • View components
  • Overriding a component
  • Changing the logo
  • Working with Storefront UI
  • Override the footer
  • CSS styling
  • Adding Google fonts
  • Overriding Storefront UI components
  • Change meta-data
  • Creating a local plugin
  • Using Shopware plugins in the PWA
  • Creating a Shopware plugin for PWA
  • Working with PWA slots
  • Extend the navigation menu
  • Adding layouts and pages via your PWA plugin
  • Overriding remote PWA plugins
  • Using settings in your plugin
  • Interacting with the Shopware APIs
  • shopware.stoplight.io
  • Examples of using the Store API
  • Setting API defaults
  • Using the API
  • Creating a Store API Route
  • First peek at CMS architecture
  • Analysing the resource type
  • Overriding a CMS Block
  • Overriding a CMS Element
  • CMS Jumbotron example
  • Customizing the category page
  • Customizing the product page
  • Using product functions
  • A custom error page
  • Checkout overview
  • disable-cart-notifications
  • Interceptors
  • Creating custom composables
  • shopware-pwa domains
  • The ServiceWorker
  • snippets
  • Using Shopware PWA without Storefront UI
  • Deployment
  • AJAX calls with SSR
  • Adding the right context
  • Deployment with SSG
  • Dealing with SSR
  • Development performance
  • SSR caching via Redis
  • Building a PWA without Shopware PWA
  • Troubleshooting
  • Best practices


Technical merchants
Frontend developers


Experience with Shopware 6 Admin Panel
Experience with Vue fundamentals (binding syntax, slots, routing, Vuex, perhaps even NuxtJS)
Skilled in JavaScript

Frequently Asked Questions

There is a minimum number of attendees listed. What does this mean?

The training is only held when there is a number of attendees. This number is usually 4 but sometimes we bring this down to 2 or 3. This minimum number simply means that if a class is not "full", either you get a refund or your ticket is transferred to another date.

Jisse Reitsma

The teacher: Jisse Reitsma

Thus it came to be

When Jisse started with Magento, he already had years of experience programming in Joomla (back in the days when Joomla was actually the #1 CMS - believe it or not). Back then, open source cart solutions were lacking and Magento 1.0 brought a lot of hope.

Quickly Jisse dived into the new architecture: In 2009, he built his first extensions, among which the fundaments of a bridge between Joomla and Magento (MageBridge) and various project-specific extensions (among which payment providers and custom MVC/EAV modules).

A relieve

Over the years, he experienced what most Magento developers experienced with M1: A lot of power, but also frustration. After a couple of years, it no longer was cutting-edge and it barely adopted new developer standards. When the new Magento 2.0 alpha 1 came out, Jisse started playing with it. And he was relieved to see modern tools in its architecture: Composer, PHP namespacing, testability, CLI-driven management, proper design patterns.

Again, after building some modules and dummy projects, the first Magento 2 developer training was given in January 2017 (two months after the official release) and numerous M2 trainings have followed for both backend developers, frontend developers and devops.

Frontend sagas

Currently, with Magento 2 being several years old now, the fuzz is no longer about its backend architecture: It is the frontend that matters. Jisse has given numerous frontend development trainings, where people complain about LESS (and not SASS) being used, loading times to be slow (while in fact M2 allows for enough tuning to make it bloody fast), an archaic combo of Knockout/RequireJS (while they both serve their purpose in regards to backwards compatibility).

PWA is the new keyword. Jisse has dived into React, Redux & service workers in combination with GraphQL and NodeJS tools. He is currently working in various initiatives to help developers embrace the new frontend stack (ExtDN, Vue Storefront, DEITY). Also, he has added Docker and Kubernetes to his vocabulary.

As of yet, it is fair to say that Magento holds little surprises for Jisse. He is your guy to train you or your developers properly in both backend and frontend technology.