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

  • 78 lessons with 5+ hours of video
  • Student notes (384+ pages)
  • Accessible at any moment
  • Learn at your own pace
per year per individual

Blended Learning

  • Everything under On Demand
  • Teacher support via email & slack
  • Prioritized requests for new lessons
  • Get the personalized help that you need
per year per individual

Custom Training

  • Everything under Blended Learning
  • Economical for groups of 5 and more
  • Freely debate company-specific topics
  • Online or on-site at your company

Custom pricing

per training

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   n/a
Vue partials   n/a
Provide and inject   n/a
Introduction of NuxtJSfree04m 49s
Installing NuxtJS   n/a
Nuxt.js themingfree13m 56s
Nuxt.js architecture   n/a
NuxtJS configuration   n/a
Nuxt.js modules   n/a
Customize routing   n/a
NuxtJS content module   n/a
Nuxt middleware   n/a
NuxtJS plugins   n/a
First steps into Shopware PWA theming   n/a
Creating layouts   n/a
View components   n/a
Overriding a componentfree09m 04s
Working with Storefront UI   n/a
Override the footer   n/a
CSS styling   n/a
google-fonts   n/a
Overriding Storefront UI components   n/a
Change meta-data   n/a
Creating a local pluginfree13m 22s
Using Shopware plugins in the PWA   32m 07s
Creating a Shopware plugin for PWA   13m 46s
Extend the navigation menu   n/a
Working with PWA slots   n/a
Adding layouts and pages via your PWA plugin   n/a
Overriding remote PWA plugins   n/a
Interaction with the REST API   n/a
Examples of using the Store API   19m 19s
Setting API defaults   n/a
Using the API   n/a
Creating a Store API Route   n/a
First peek at CMS architecturefree21m 17s
Creating a custom CMS Block   n/a
CMS Jumbotron example   n/a
Customizing the category page   n/a
Using product composables   n/a
ajax-call   n/a
Customizing the category page   n/a
A custom error page   n/a
Checkout overview   n/a
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
Adding the right context   n/a
Deployment   n/a
Deployment with SSG   n/a
Dealing with SSR   n/a
Development performance   n/a
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
  • Customize routing
  • NuxtJS content module
  • Nuxt middleware
  • NuxtJS plugins
  • First steps into Shopware PWA theming
  • Creating layouts
  • View components
  • Overriding a component
  • Working with Storefront UI
  • Override the footer
  • CSS styling
  • 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
  • Extend the navigation menu
  • Working with PWA slots
  • Adding layouts and pages via your PWA plugin
  • Overriding remote PWA plugins
  • Interaction with the REST API
  • Examples of using the Store API
  • Setting API defaults
  • Using the API
  • Creating a Store API Route
  • First peek at CMS architecture
  • Creating a custom CMS Block
  • CMS Jumbotron example
  • Customizing the category page
  • Using product composables
  • ajax-call
  • Customizing the category page
  • 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
  • Adding the right context
  • Deployment
  • Deployment with SSG
  • Dealing with SSR
  • Development performance
  • 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.



GitHub organizations

Legal information

Other Yireo sites

Get Social

About Yireo