Update vom 08.12.2020: Die praktische Erfahrung aus mehreren Projekten hat gezeigt, dass der PWA-Ansatz aus unserer Sicht nicht für alle Magento-Projekte geeignet ist. Wir haben daher mit Hyvä einen neuen Ansatz für ein performantes und v.a. einfacheres Frontend entwickelt. Mehr Informationen zu Hyvä Themes gibt es hier:
Wir beobachten die Schritte, die Magento mit dem hauseigenen PWA Studio unternimmt, sehr interessiert, ebenso die Entwicklung des Vue Storefront-Projektes von Divante. Beide machen den Eindruck, von relevanten Entwicklerteams weiterentwickelt zu werden. Unserer Einschätzung nach sind allerdings beide noch nicht so weit fortgeschritten wie Deity. Es müssen noch geschäftskritische Probleme wie Online-Zahlung gelöst werden, während sie bei anderen Themen wie dem Offline-Modus voraus sind. Es wird deutlich, dass der Ansatz ein anderer ist, als bei DEITY und FrontCommerce der Fall ist. Vue Storefront war von Anfang an ein Open-Source-Projekt, meines Wissens ohne ein begleitendes Kundenprojekt. Aktuell arbeiten verschiedene Agenturen jedoch an mehreren Vue-Storefront-Implementierungen, von denen die Erste vor Kurzem live gegangen sein soll. Es ist also definitiv Bewegung im Vue-Storefront-Umfeld.
React oder Vue
Weshalb DEITY React statt Vue für das UI gewählt hat, würde einen weiteren Artikel füllen. Dahinter verbirgt sich mehr als eine reine Geschmacksfrage: Vue ist ein vollständiges Frontend-Framework, das es einem sehr einfach macht, schnell Anforderungen umzusetzen, solang man in den Grenzen des Frameworks bleibt. Falls diese Grenzen allerdings überschritten werden sollten, kann es kompliziert werden. Andererseits ist React eine Bibliothek, kein Framework. Die Einstiegshürde ist höher, dann kann es allerdings mit anderen Komponenten frei zusammenarbeiten. Man hat damit mehr Möglichkeiten, das zu bauen, was man möchte. Nicht ganz zufällig hat auch Magento React für ihr PWA Studio ausgewählt, während Vue unter Laravel-Entwicklern sehr beliebt ist.
Magento PWA Studio
Das Magento-PWA-Studio ist eine andere Geschichte. Das Team rund um James Zetlen hat Auflagen von Magento, die die Aufgabe nicht einfacher machen. Im Grunde müssen sie alle gleichzeitig zufrieden stellen, und eine sehr flexible und erweiterbare Lösung entwickeln, während sie gleichzeitig eine GraphQL-API in PHP bauen und sich mit den Magento-Backend-Architekten abstimmen müssen. All das führt zu einem hohen Risiko des „Overengineerings“ und einen Magento-eigenen Weg abseits der Standards einzuschlagen, wie wir es in der Vergangenheit bereits gesehen haben. Wir wissen bereits, dass die Werkzeuge des PWA Studios das Backend und das Frontend eng verknüpfen.
Da sie selbst keine eigenen echten Shopprojekte mit ihrem Produkt umsetzen, müssen sie sich auf das Feedback aus der Community verlassen. Es ist gut zu sehen, dass sie über Community Engineering Hangouts und andere Kanäle aktiv Feedback anfordern, und dass sie auch unfertigen Code auf dem magento-research Github-Konto zeigen.
Wir hoffen auf einen Erfolg von Magento mit PWA, da das gesamte Ökosystem davon profitieren würde. Aus technischer Sicht bevorzugen wir allerdings den entkoppelten Ansatz von DEITY, weshalb wir uns für dessen Unterstützung entschieden haben.

Author: Fabian Schmengler
Fabian Schmengler ist Diplom-Informatiker und Magento Entwickler bei integer_net. Seine Schwerpunkte sind Backend-Entwicklung, Konzeptionierung und Test-Automatisierung. Seit 2011 ist er Magento Certified Developer, seit 2014 Magento Certified Solution Specialist.