Modernisierung der Website und Migration auf Gatsby 5
Projektzeitraum: März 2025 – Juni 2025
Projektübersicht und Ziele:
Ziel dieses Projekts war die umfassende Aktualisierung und Modernisierung einer auf Gatsby.js basierenden Website. Die Hauptaufgabe bestand in der Migration von einer technisch veralteten Gatsby-Version 2 auf die neueste mögliche stabile Version, Gatsby 5. Das Projekt umfasste außerdem die Aktualisierung der gesamten Entwicklungsumgebung (Node.js), das Refactoring von Schlüsselkomponenten sowie umfangreiches Bugfixing und Code-Optimierung.
Anfängliche Herausforderung:
Ausgangspunkt war eine Website, die auf der Gatsby-Engine 2.13.3 und einer Node.js-14-Umgebung lief. Diese Konfiguration war inkompatibel mit neueren Node.js-Versionen (16 und 18), was weitere Updates, Sicherheitspatches und die Nutzung moderner Framework-Funktionen blockierte.
Phasen der Projektdurchführung:
1. Phase I – Zwischenmigration auf Gatsby 4:
- Nach einer Kompatibilitätsanalyse war der erste Schritt die Migration der Seite auf Gatsby 4.25.0 und der Umgebung auf Node.js 18.
- Alle Gatsby-Plugins wurden auf die höchsten von Gatsby 4 unterstützten Versionen aktualisiert.
- Ein entscheidendes Refactoring der Bilder wurde durchgeführt, wobei alle Instanzen von den veralteten
gatsby-background-image
undgatsby-image
auf den einheitlichen, modernengatsby-plugin-image
-Standard umgestellt wurden. - In dieser Phase wurde eine vollständig stabile und funktionierende Version der Website erreicht.
2. Phase II – Finale Migration auf Gatsby 5:
Nach der Stabilisierung der Umgebung wurde die endgültige Migration der Website-Engine auf Gatsby 5.14.0 eingeleitet. Diese Version läuft zwar auf Node.js 18, stellt aber auch die Kompatibilität mit zukünftigen Versionen (z. B. Node.js 22) sicher.
3. Phase III – Optimierung und Qualitätssicherung (QS):
- Behebung von Fehlern und Warnungen: Alle während des Build-Prozesses auftretenden Warnungen wurden beseitigt. Kritische Fehler wurden behoben, darunter Probleme beim Aktualisieren von Seiten, beim Sprachwechsel und das Auftreten eines doppelten Schrägstrichs („//“) in URLs.
- Code-Bereinigung: Alle ungenutzten Dateien und Node.js-Module wurden entfernt, um das Projekt zu optimieren.
- Seitenspezifische Korrekturen: Auf den Unterseiten „firma/company“ und „kontakt/contact“ wurden dedizierte funktionale und visuelle Korrekturen implementiert.
- Abschließende Tests und visueller Feinschliff: Der letzte Schliff am Projekt erfolgte nach detaillierten Absprachen und Tests durch den QS-Spezialisten und meinen Freund Tomasz Ciechomski, der dabei half, kleinste visuelle Details zu identifizieren und zu verfeinern.
Ergebnis:
Das Projekt wurde erfolgreich abgeschlossen und lieferte eine vollständig modernisierte, stabile und leistungsstarke Website. Die neue Version ist sicherer, leichter zu warten und bereit für eine nahtlose zukünftige Weiterentwicklung.