Zurück zu den Projekten
persönliche_webseite

Die eigene Webseite und Blog erstellen

Projekt besuchen

Wenn man seine eigene Webseite erstellt, ist es oft schwer, sich bei der Vielzahl von Produkten auf dem Markt zu entscheiden. Die Frage ist immer: Was ist der beste Weg für mich? Welchen Stil wähle ich? Welche Vorlagen gibt es? Und viele andere Fragen. Anstatt jedoch auf die Suche nach fertigen Lösungen zu gehen, habe ich mich entschieden, zwei kleine Projekte zu starten: Meine persönliche Website und meine Blog-Website. Auf meiner persönlichen Website kann man direkt meinen neuesten Lebenslauf herunterladen und ein Kontaktformular ausfüllen, während die Blog-Website einen vollständigen Admin-Modus hat, der es mir ermöglicht, neue Projekte oder Blogs zu erstellen, zu bearbeiten und zu löschen, so wie es mir beim Schreiben angenehm ist.

Das klingt vielleicht ein bisschen widersprüchlich: Warum nicht ein bestehendes Tool nutzen? Jedes Tool könnte funktionieren, aber eine eigene Lösung zu entwickeln, erlaubt mir, neue Frameworks zu lernen, und es macht definitiv mehr Spass, eine selbstgemachte Lösung zu verwenden, als eine fertige. Das ist jedenfalls meine Meinung.

Die Basis habe ich mit FastAPI gelegt (ja, ich habe mich für Python entschieden – nach so vielen Type- und JavaScript-Projekten in letzter Zeit musste ich mal wieder zu etwas Altbewährtem in Python zurückkehren ;)). Der Clou war, keine Datenbank zu verwenden. Warum? Weil das bedeutet, ein Schema aufzusetzen und es bei jeder Iteration zu erweitern. Da ich in letzter Zeit viel mit Docker Compose und Kubernetes gearbeitet habe, kam mir die Idee, YAML zu verwenden, um alle sichtbaren Elemente vorzudefinieren und eine sehr einfache Möglichkeit zu schaffen, die Seite in mehrere Sprachen zu übersetzen. Und wenn die gesamte Webseite schon in YAML pro Sprache definiert ist, warum nicht auch Markdown für die textlichen Beschreibungen verwenden?

Nun, lustigerweise macht ein einfaches Dateisystem statt einer Datenbank für eine persönliche Webseite richtig Spass (ich würde diesen Ansatz für eine vollwertige Anwendung nicht empfehlen ... ehrlich gesagt könnte ich dazu zu viele Bedenken äussern, haha).

Aber in jedem Fall habe ich durch das Kombinieren einfacher Dateien und Styles meine Webseiten sehr schnell erstellt und mit einer Dockerfile versehen, um sie einfach auf jedem meiner Systeme zu deployen.

Der Aufwand, einen Admin-Modus für den Blog zu erstellen, diente dazu, meine Komfortzone zu erweitern. Das ist ein Thema, das ich in einem meiner Blogs behandeln werde – also schau dort gerne vorbei. Das war es auch schon zu diesem Projekt. Danke fürs Vorbeischauen und fühl dich frei, mir über mein persönliches Kontaktformular eine Nachricht zu hinterlassen, wenn du mehr erfahren möchtest ;)

Liebe Grüsse,
maugini_

Verwendete Technologien

  • Docker
  • CapRover
  • MarkDown
  • Yaml
  • Python
  • FastApi
  • Jinja
  • HTML
  • JavaScript

Weitere URLs