Hallo Community,
wir haben für einen Kunden eine App zur Verbesserung des Google Lighthouse Scores gebaut und sind uns unsicher ob dafür am Markt Nachfrage besteht bzw. ob es sich lohnt die App oder das Plugin (je nach Bedarf) so salonfähig zu machen um es im Community Store anzubieten.
Wir konnten mit der App erhebliche Verbesserungen der Ladezeiten erzielen und so den Lighthouse Score ordentlich drücken.
Unsere App deckt grob folgenden Use-Case und Funktionen ab:
1. Dynamische Ausspielung von Critical CSS:
Die Erweiterung ermöglicht es Administratoren, festzulegen, für welche Seitentypen kritisches CSS verwendet werden soll. Über einen eigenen Backend-Service wird das Critical CSS generiert und an den Shopware-Shop zurückgegeben, wo es gespeichert und beim nächsten Seitenzugriff verwendet wird. Das Standard-CSS wird verzögert nachgeladen, was zu einer deutlichen Verbesserung des Lighthouse-Scores führt. Dies wirkt sich positiv auf die Platzierung in Suchmaschinen aus und sorgt für mehr organischen Traffic.
2. Flexibilität bei Seitentypen und Regeln:
Neben den Standard-Seitentypen von Shopware, wie Startseite, Kategorieseite oder Produktseite, können auch eigene Seitentypen definiert werden. Dank der Integration des Shopware Rule Builders lassen sich komplexe Regeln erstellen, etwa um für verschiedene Kategorieebenen (z. B. category.level eq 1 oder category.level eq 2) unterschiedliches Critical CSS zu verwenden. So kann die Erweiterung flexibel an unterschiedliche Layouts angepasst werden. Darüber hinaus können auch zusätzliche Controller und Page-Model-Daten, die durch andere Erweiterungen hinzugefügt werden, in die Regeln einbezogen werden.
3. Maximale Kompatibilität ohne zusätzliche Abhängigkeiten:
Die Erweiterung setzt ausschließlich auf Standardabhängigkeiten von Shopware und benötigt keine zusätzlichen NPM-Pakete. Der Backend-Service bringt die benötigten Bibliotheken direkt mit und kommuniziert über eine API mit dem Shopware-System. Dadurch bleibt die Erweiterung schlank und kompatibel mit zukünftigen Updates.
Wie löst ihr das Problem? Wer wäre an unserer Lösung interessiert?
Ich freue mich über euren Input