cgX13

Ein Sehr Simples Familien-Wiki

Ich mache mir seit Jahren Notizen. Zu quasi allem. Was meine Frau anfangs noch etwas belächelt hat, ist mittlerweile schon quasi eine feste Erwartungshaltung. “Du hast das doch bestimmt irgendwo notiert…”

Technische Umsetzung

Im Endeffekt war das auch schon der Auslöser. Ich wollte gewisse Notizen auch für meine Frau zugänglich machen. Da ich alles als Markdown-Dateien pflege, unterwegs mit Obsidian und am PC via vim, war eigentlich schon klar: Da kann ich was mit hugo machen.

Der Heimserver läuft eh, über Traefik und Pi-Hole sind die Docker Container im lokalen Netzwerk erreichbar, das sollte für den Anfang passen.

Also habe ich erstmal ein neues Hugo-Projekt erstellt. Da ich für Scolohub.com schon sehr viel Erfahrung mit Hugo Book habe, und ich es für Dokumentation eigentlich ganz brauchbar halte, war das Theme auch meine erste Wahl. Da die Installation des Themes als git-Submodul passiert, wird die Heim-Dokumentation also auch direkt in meiner lokalen Gitea-Instanz versioniert.

Der leichte Teil war dann einfach das Kopieren von meinen Notizen in das /content-Verzeichnis von Hugo. Ein bisschen Frontmatter dazu - geschenkt.

Inhaltliche Struktur

Das wirkliche Heavy Lifting war eigentlich die Informationsarchitektur. Erstmal habe ich mich an den Standard von Hugo Book angelehnt: Alle Dokumentation kommt erstmal nach /content/docs.

Dort habe ich dann grob die relevanten Bereiche als Unterverzeichnisse angelegt:

  • betriebskosten: Hier werden Vertragsdaten zu unseren Energieversorgern, aber auch die jährlichen Abrechnungen gespeichert. In jeweils einer Tabelle für Strom, Gas, Wasser, haben wir nun unseren Verbrauch und die Kostenentwicklung direkt im Überblick. Aber auch die Grundbesitzabgaben oder Versicherungen haben hier ihre Untersektionen.
  • netzwerk: Hier ist unser Heimnetzwerk dokumentiert. IP-Adressen, Endgeräte. Primär für mich, aber im Notfall auch für meine Frau.
  • haustechnik: IP-Adressen, Seriennummern, technische Datenblätter zu unserer PV-Anlage, Batterie-Speicher, Wechselrichter, aber auch eine Übersicht zu unserem Sicherungskasten und der alten Gastherme.
  • smarhome: Welche IoT-Geräte sind in unserem Haushalt, wie steuert man die, was macht dieses Home Assistant?
  • homelab: Die Dokumentation für die Frau: Welche Dienste laufen im Heimnetz, wie erreiche ich die und was machen die überhaupt? Und ja, nicht nur für die Frau. Auch für mich. Denn in einem halben Jahr weiß ich ja auch nicht mehr, was ich da mal vertüddelt habe…
  • vps: Was läuft da außerhalb unseres Hauses? Wohin geht das Backup von Heimserver und NAS? Und - ja, da denken wir schon länger dran - was muss nach dem Ableben des Ehepartners vielleicht noch abgewrackt werden?
  • subscriptions: Welche Abos haben wir bei welchem Dienst? Wie verwaltet man die und in welchem Password-Manager sind die Zugangsdaten zu finden?
  • inneneinrichtung: Weitaus weniger technisch, aber durchaus sinnvoll: Welche Farbcodes haben wir uns nochmal für die Türrahmen ausgesucht? Wer war nochmal der Hersteller unserer Plissees?

Dabei ist die Sammlung natürlich noch nicht vollständig und viele Teilaspekte fehlen noch. Und Inhalte erst recht. Aber es ist erstmal ein Anfang.

Was noch dazu kommt, sind id, also Identitäten. Was ist unsere Steuernummer? Wer hat welche Id-Nummer? Wie war nochmal die IBAN von Deiner Bank, meiner Bank, unserer Bank?

Aber es geht auch über die Dokumentation hinaus. Wir haben eine Liste mit Rezepten, als Links zu den jeweiligen Webseiten. Aber wir wissen mittlerweile: Webseiten gehen schon mal offline, Inhalte verschwinden, sei es nur hinter Paywalls, Unfälle passieren. Also gibt es neben /content/docs seit heute noch ein /content/rezepte. Dank curl, grep und etwas Python konnte ich 150 Rezepte schnell und einfach in Markdown-Dateien umwandeln, die nun eine Rezept-Sammlung in unserer Dokumentation sind.

Für unsere Weihnachtspostkarten hatten wir bisher ein Word-Dokument in der Cloud mit den Adressen der Empfänger. Ich glaube diese Daten kommen demnächst nach content/adressbuch. Natürlich mit strukturierten Daten im Frontmatter, die man im Template ordentlich auswerten und anzeigen kann. Mit eigenen Taxonomien in Hugo, kann ich dann das Adressbuch auch in einer Selektion für Weihnachtskarten zusammenfassen. Oder die Adressen auch anders qualifizieren. Ja, sicherlich eine Spielerei, und durchaus fragwürdig bei all den existierenden Adressbuchlösungen auf dem Smartphone oder in der Cloud.

Und wenn ich schon mal bei Adressen bin, wird sicherlich auch ein Verzeichnis unserer Handwerker erstellt. Aktuell sind die Kontaktdaten aufgeteilt zwischen meiner Frau uns mir, eine zentrale Stelle macht da wirklich wieder Sinn.

Ausblick auf weitere Inhalte

Natürlich kann diese Dokumentation nach belieben wachsen: Untersektionen für jedes Familienmitglied mit Inventarisierung des digitalen Lebens - eine digitale Nachlassverwaltung hat uns schon mal sehr geholfen und wird von uns als wirklich wichtig erachtet. Dokumentation zu unseren Haustieren, für uns, für unseren Katzensitter, für unseren Tierarzt. Protokolle von Sanierungs und Renovierungsarbeiten am Haus, sowohl für uns als Done-List, aber auch für den Fall, dass wir irgendwann wieder Verkaufen wollen und die bereits getätigten Maßnahmen festhalten wollen. Die Möglichkeiten sind unendlich.

Technische Erweiterbarkeit

Dank dem Werkzeugkasten Hugo, sind eigene Templates für die Darstellung auch kein Problem. Darstellung strukturierter Informationen von Rezepten oder Adressbucheinträgen? Einfach ein Custom Layout erstellt. Die Optik von Hugo Book an unsere Bedürfnisse anpassen? Einfach etwas Styling in die _custom.scss. Es ist eine neue Spielwiese für den Nerd!

Status Quo: Was es ist, und was es nicht ist

Aber da sind wir auch schon bei den Nachteilen dieser Lösung: Es ist eben kein wirkliches Wiki wie Bookstack, DokuWiki oder Mediawiki, wo jeder jederzeit alles bearbeiten kann. In der aktuellen Lösung muss ich immer an den Rechner, im Texteditor meiner Wahl die Inhalte hinzufügen, bearbeiten, ergänzen. Da es sich aber eigentlich um statische Stammdaten handelt, erachte ich das als eher kleinen Nachteil.

Für mich überwiegt eher der Vorteil, dass die Quelldaten für das Familien-Wiki schlichte Markdown-Textdateien sind, die ich jederzeit weiterverwenden kann. Wenn es dynamischer werden soll, muss ich mich halt mal in Grav als CMS einarbeiten. Wenn es nicht mehr als Seite im Intranet bereitgestellt werden muss, kommen die Dateien schlicht wieder in mein Obsidian Vault. In Git sind alle Änderungen versioniert. Und per Cronjob und rclone befindet sich immer ein Offsite-Backup in einem privaten S3-Bucket.

Es ist keine perfekte Lösung - und ich weiß, es gibt keine perfekten Lösungen. Aber es ist eine pragmatische und simple Lösung, wie wir gemeinsam Informationen um unser Leben teilen. Ich finde es gut und bin sehr gespannt, wie sich die Informationssammlung in Zukunft noch weiter entwickelt.