pd_ssg
pd_ssg ist ein Programm, das aus strukturierten TOML- und Markdown-Dateien eine Website wie diese generieren kann.
Funktionen
Die generierte Website besteht aus mehreren zentralen Komponenten:
Startseite
Die Startseite enthält Name, Beschreibung und Links zu Profilen auf anderen Websites. Diese werden zusammen mit einer Auswahl an Projekten, Zertifikaten und Skills angezeigt.Projekte
Für ein Projekt kann ein Start- und Enddatum sowie eine Kurzbeschreibung festgelegt werden, die in der Infocard angezeigt wird. Zudem können Links zu anderen Websites gesetzt werden, die z. B. auf den Source-Code verweisen. Skills, die mit diesem Projekt im Zusammenhang stehen, können direkt verlinkt werden. Die Projektbeschreibung wird in Markdown verfasst.Zertifikate
Bei Zertifikaten werden der Aussteller sowie das Ausstellungsdatum angegeben. Gibt es URLs zum Aussteller und zum Zertifikat, werden diese als Links angezeigt. Auch hier können relevante Skills verlinkt werden.Skills
Hier muss zumindest der Name angegeben werden. Man kann aber auch eine kurze Beschreibung und Links zu relevanten Websites hinzufügen. Skills können auch in Kategorien eingeordnet werden.
Zusätzlich gibt es noch einige Features, die die gesamte Website betreffen:
- Erstens gibt es einen automatischen Darkmode, der auch manuell umgestellt werden kann.
- Zweitens gibt es die Möglichkeit, mehrere Lokalisierungen zu definieren. Für jede Sprache werden eigene Dateien erstellt.
Technik
Das Herzstück des Programms ist in Go geschrieben. Die Rohdaten werden eingelesen, miteinander verlinkt und schließlich mithilfe der Templates die finalen Dateien erstellt. Die Daten werden in strukturierten Verzeichnissen in TOML- und Markdown-Dateien definiert. Die Templates basieren auf HTML, CSS und JavaScript. Das Projekt umfasst derzeit etwa 4.000 Zeilen Code.