ChecklistFabrik: Simple Process Management

checklistfabrik

ChecklistFabrik ("clf") hilft, Prozesse und Todo-Listen in Teams und Unternehmen zu standardisieren und die Fragen "Was ist als nächstes zu tun" oder "Wo bin ich im Prozess stehen geblieben" zu beantworten. Benötigt wird lediglich eine YAML-Datei, die den Ablauf als Checkliste definiert, Python zur Ausführung von ChecklistFabrik und ein Browser zur Anzeige der von clf erzeugten interaktiven HTML-Checkliste.

Eine vollständige Liste aller Releases findest du auf GitHub.

ChecklistFabrik lässt sich mit uv ohne dauerhafte Installation per uvx checklistfabrik ausführen oder mit uv tool install checklistfabrik als Tool installieren. Weitere Installationsmethoden (pipx, pip, Development-Setup) sind auf der PyPI-Seite beschrieben. ChecklistFabrik wurde in der Linuxfabrik entwickelt, ist Open Source und steht unter der UNLICENSE.

Details und Dokumentation finden sich auf linuxfabrik.github.io/checklistfabrik.

Wozu

ChecklistFabrik richtet sich nicht nur an die Software-Branche oder den IT-Betrieb, sondern an alle Bereiche, in denen Checklisten und standardisierte Arbeitsprozesse zum Einsatz kommen: von der Server-Wartung über Deployments bis zu Schichtübergaben in der Produktion, Pre-Flight-Checks oder Onboarding-Abläufen.

Typische Anwendungsfälle:

  • Standard Operating Procedures (SOPs): wiederkehrende Abläufe in IT-Ops, Produktion, Labor, Medizin, Service oder Verwaltung, die immer denselben Weg gehen sollen.
  • Deployments und Inbetriebnahmen: reproduzierbare Schritt-für-Schritt-Anleitungen, von denen am Ende ein dokumentiertes Protokoll bleibt.
  • Wartungs- und Wiederkehrroutinen: monatliche Server-Wartung und Patchdays in der IT, Inspektionen und Übergaben in der Produktion.
  • Onboarding und Schulung: neue Mitarbeitende durch standardisierte Abläufe führen.
  • Audits und Compliance: nachvollziehbare Reports, die zeigen, wer wann welche Schritte durchlaufen hat.

Was kann ChecklistFabrik

  • Dashboard: clf-play ohne Argumente öffnet ein Web-Dashboard, das alle Templates und Reports im aktuellen Verzeichnis listet. Per Klick lassen sich neue Checklisten starten oder bestehende fortsetzen.
  • Auto-Save: jeder Page-Wechsel schreibt den Fortschritt in den Report. Browser-Tab versehentlich geschlossen? Einfach den Report wieder öffnen und weiterarbeiten.
  • Bedingte Pages und Tasks (when): Pages oder einzelne Tasks erscheinen nur, wenn eine Bedingung erfüllt ist (z. B. nur bei Linux-Zielen, nur wenn ein bestimmter Wert eingegeben wurde).
  • Sub-Checklisten und Template-Includes: lange Prozeduren in wiederverwendbare Bausteine zerlegen. Eine Checkliste kann andere Checklisten als "Run"-Karte einbetten.
  • Jinja-Templating: Variablen, Bedingungen, dynamisch generierte Texte mit Markdown-Unterstützung in den Fragen und Antworten.
  • Git-friendly: Templates und Reports sind reine YAML-Dateien. Diff-friendly, im Pull-Request reviewbar, leicht zu archivieren.

Begriffe

  • Template: eine YAML-Datei, die einen Ablauf als Checkliste definiert. Wird wiederverwendet, nicht direkt ausgeführt.
  • Page: eine Seite der Checkliste, die mehrere Tasks gleichzeitig zeigt.
  • Task: ein einzelner Schritt (Checkbox, Text-Input, Radio-Button, Markdown-Block etc.).
  • Report: das Ergebnis eines Checklisten-Durchlaufs, eine YAML-Datei, die aus dem Template entsteht und den Verlauf protokolliert.

Schritt 1: Checkliste als YAML-Template erstellen

Checklisten werden mit YAML definiert. Durch Features wie Jinja-Templating und verschiedene Steuerelemente ermöglicht ChecklistFabrik die Erstellung komplexer und dynamischer Prozesse. Für die Gestaltung von Elementen wie Fragen und Antworten wird Markdown unterstützt. Checklisten können modular aufgebaut und aus anderen Checklisten importiert werden. Mit when-Ausdrücken werden Pages oder Tasks nur unter bestimmten Bedingungen angezeigt. Im Beispiel unten erscheint die Linux-spezifische Anweisung nur, wenn vorher "Linux" als Zielplattform gewählt wurde.

Beispiel (Auszug):

title: 'Deploy Red Hat Build of Keycloak'
version: '1'
report_path: '$HOME/deploy-keycloak-{{ now().strftime("%Y%m%d") }}.yml'
pages:

  - title: 'Questionnaire'
    tasks:
      - linuxfabrik.clf.checkbox_input:
          label: 'Target Platform?'
          values:
            - value: 'Linux'
            - value: 'Windows'
          fact_name: 'platform'

  - title: 'Before you start'
    tasks:
      - linuxfabrik.clf.checkbox_input:
          values:
            - label: 'Make sure you have [OpenJDK 17](https://openjdk.java.net/) installed'
          required: true

  - title: 'Start Red Hat Build of Keycloak'
    tasks:
      - linuxfabrik.clf.checkbox_input:
          values:
            - label: 'On Linux: `bin/kc.sh start-dev`'
        when:
          - '"linux" in (platform | map("lower"))'

Schritt 2: Checkliste ausführen

Das Python-Tool clf-play interpretiert die YAML-Datei, rendert sie in interaktives HTML, startet einen lokalen Python-Webserver und zeigt die Checkliste im Browser an.

clf-play --template examples/deploy-keycloak.yml

ChecklistFabrik bei der Arbeit

Schritt 3: Checkliste speichern

Der Fortschritt beim Abarbeiten der Checkliste kann jederzeit gespeichert werden. Die Speicherung der Vorlagen und Ergebnisse ("Reports") in Git-Repositories ermöglicht die Zusammenarbeit im Team, eine einfache Überwachung des Prozessfortschritts, bietet eine Rollback-Funktion sowie ein Audit-Protokoll.

Wir helfen dir

Mehr über ChecklistFabrik erfahren oder eine Demo sehen? Sprich uns an.

Vorheriger Beitrag Nächster Beitrag

DE · EN