What is the current state of affairs with the GastroHero store?
Our final live walk with all storeviews took place last October - almost three months after the scheduled date.
Looking back - was the decision for a PWA the right one?
I can definitely answer that question with a resounding "yes." Our motivation at the time was to do away with the Magento 1 front-end and use an adequate replacement. PWA/Headless was and is simply the right solution for this in our case, because we wanted to increase the migratability of our system while maintaining the same level of security, without having to touch the backend at the same time.
Under the current conditions, however, I would no longer necessarily set up the store with Vue Storefront. This has less to do with the product itself, but with the fact that we are now able (and would be willing) to develop a PWA ourselves. When we started, we had no prior knowledge and JavaScript was also completely new territory for most of our developers, so Vue Storefront was the right choice. At the time, Vue Storefront was also not completely finished, which meant we could still do a lot of co-development. In the meantime, however, it can do so much more than we need, so that a self-developed PWA, which is "only" geared to our needs, would now make more sense.
"Our" deployed Vue Storefront, by the way, is no longer updateable, as we have already made some major changes, but that's fine with us. Vue Storefront 2, on the other hand, uses a different architecture, so it's out of the question for us as well.
What are your experiences in daily use?
The system is much more strict in many things and many things work differently than we and the users were used to. For example, there are problems with the CMS blocks from Magento 1 in Vue Storefront, e.g. invalid HTML. We're already working on a solution there, but it boils down to sourcing the CMS blocks elsewhere in the future.
What works extremely well, though, is the checkout. Even though we had to "tinker" a lot with the individual payment methods ourselves, since not all of them were available in Vue Storefront, the result is really impressive. As a customer, you hardly notice that your data is being processed, the process is so incredibly fast. In numbers: a reduction from 1sec/saving payments to less than 0.1sec/saving payments - if the response from the payment service provider is just as fast, because that is the only bottleneck at this point. For a merchant, this is of course an incredible advantage, because it also reduces the bounce rate enormously.
We continue to have similar speed increases with filtering, which is instantaneous. In order not to confuse the user, we now cache and sometimes work with spinners to artificially delay the process.
Server-side rendering is also brilliantly fast, client-side rendering on the other hand is sometimes very slow, there is definitely still potential there.
And even though it wasn't a top priority for our store: mobile is very good and works smoothly.
What is your conclusion today?
It always depends on the respective goal, so I can't make a blanket recommendation for PWAs here. For example, I can't say if Magento 2 works well with Headless because I don't know the integration. For the more traditional approach, an HTML frontend may also be the way to go. As I said, depending on the problem or motivation, different choices or solutions certainly make sense.
Based on the foundation at GastroHero at the time, our decision in favor of a PWA is still valid - Headless was and is the right way for us. We went into the project unencumbered at the time and had to realize in the meantime that definitely not all that glitters is gold, but the actual goal has not changed in the past few months.