Website-Upgrade und -Wartung

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 und gatsby-image auf den einheitlichen, modernen gatsby-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.