Skip to content
CodeForFirePublic

About

Offline-first incident documentation (Einsatzdokumentation) for fire brigades — .NET/Avalonia desktop, Android companion, SignalR sync, PDF reports.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

2 watching

Forks

Latest commit

 

History

558 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lagebuch

Einsatzdokumentation für den ELW.
Offline. Robust. Open Source.

CI Release Downloads MIT OpenSSF Scorecard OpenSSF Best Practices

Ein Einsatz in Lagebuch: Einsatzdaten, ETB, Kräfte, Atemschutz, Aufgaben, CO-Messung, PDF

Lagebuch ist das digitale Einsatztagebuch für den Einsatzleitwagen: eine Desktop-Anwendung, die auch ohne Netz, ohne Cloud und ohne Abo funktioniert. Ein Einsatz ist eine Datei auf dem ELW-Laptop – mit Einsatztagebuch, Kräften, Atemschutzüberwachung, Aufgaben, CO-Messprotokoll und PDF-Bericht.

Alles auf einer Seite: codeforfire.github.io – Übersicht, Probefahrt, Download und Datenschutz, ohne GitHub-Konto und ohne Markdown.

English speakers: the developer documentation starts at For developers.

Für wen ist Lagebuch?

  • ELW-Besatzung und Führungsassistenten, die im Einsatz mitschreiben, Kräfte führen und die ILS auf dem Laufenden halten – mit der Tastatur, ohne Maus-Akrobatik.
  • Atemschutzüberwachung, die verlässliche Zeiten, Druckabfragen und einen Rückzugsalarm braucht, den man auch im lauten ELW hört.
  • Kleine und mittlere Wehren, die keine Lizenzgebühren, keine Server und keine IT-Abteilung haben – aber trotzdem sauber dokumentieren wollen.

Warum Lagebuch?

  • Läuft offline – wirklich. Kein Internet, kein Konto, kein Server. Jeder Einsatz ist eine einzelne .lagebuch-Datei, die euch gehört und die ihr archivieren, kopieren oder weitergeben könnt.
  • Keine Daten verlassen den ELW. Stammdaten, Namen und Handynummern liegen nur auf euren Geräten. Die optionale Mehrgeräte-Verbindung läuft im LAN, TLS-gesichert mit PIN – ohne Cloud, ohne Telemetrie. Was genau wo gespeichert wird, steht in Datenschutz und Sicherheit – die Seite für die Kreisbrandinspektion und den Datenschutzbeauftragten.
  • Open Source, MIT-Lizenz. Kein Abo, keine Sitzplatzlizenzen, kein Vendor-Lock-in. Der Quellcode ist einsehbar, Änderungswünsche sind ein Issue entfernt.

Was Lagebuch kann

Modul Was es tut
Einsatzdaten Stichwort, bayerische Einsatznummer (B 1.2 JJMMTT lfd.Nr.) und Adresse – nachtragbar, sobald die ILS zurückruft
ETB Einsatztagebuch mit Richtung (Eingang/Ausgang/intern), automatischen Systemeinträgen und nachträglicher Korrektur mit Historie
Lagemeldung Zweiter Reiter im ETB (Strg+L): Meldender, Einsatzstelle, Lage, Maßnahmen, Einheiten und Nachforderungen – vorbefüllt aus dem Einsatz, als Funkspruch zum Vorlesen; SENDEN schreibt sie als „LM n“ ins ETB, startet die Rückmeldung an die ILS neu und nummeriert sie für den PDF-Bericht. Dazu ein Buchstabier-Helfer (Anton/Berta, DIN 5009, NATO), auch aus dem Einsatztagebuch erreichbar
Kräfte Fahrzeuge aus den Stammdaten, Stärke als ZF/GF/Mann, AGT-Zahl, Status und Bemerkung; Gesamtstärke immer im Blick
Aufgaben Aufträge mit Wichtigkeit, Dringlichkeit, Zuständigem und Timer – mit Sprachansage, wenn sie fällig werden; direkt aus einem ETB-Eintrag anlegbar
Funktionen EL, Abschnittsleiter und weitere Rollen mit von/bis, Übergabe und Handynummer; jede Rolle in den Stammdaten als einmal je Einsatz, einmal je Abschnitt oder beliebig oft einrichtbar
Beteiligte Eigentümer, Fahrzeughalter, Polizei, Evakuierte: Name, Telefon, Notiz und Aufenthaltsort je Person – synchronisiert, im PDF, bewusst ohne ETB-Eintrag
Ausgabeliste Ausgegebene Geräte (Mobilteil, Westen, AED …) aus den Stammdaten: an wen, Telefon, Organisation, mit Uhrzeit; Rückgabe mit einem Klick – was noch draußen ist, steht oben, und „Einsatz abschließen“ warnt davor; im PDF, ohne ETB-Eintrag
Atemschutzüberwachung Trupps mit Einstiegsdruck, Einsatzzeit-Countdown, Druckabfrage-Intervall, Rückzugsdruck und Rückzugsalarm – mit Sprachansage und Sirene; Sicherheitstrupp je Trupp zugeordnet und im ETB protokolliert
Rückmeldung an ILS Erinnerung nach konfigurierbarer Zeit, danach im Intervall, mit ERLEDIGT-Quittierung; überlebt Neustart und Absturz
CO-Messprotokoll Haus, Stockwerk, Wohnung: Status (offen / durchsucht / betroffen), Messreihe je Wohnung mit Uhrzeit und ppm-Wert in Gefahrenfarbe, Bewohnername, Schlüssel vorhanden – wie die Türmarkierung vor Ort; der Verlauf steht im ETB und im PDF
Checklisten Beliebig viele eigene Checklisten aus den Stammdaten – benannt, in frei wählbarer Reihenfolge in der Seitenleiste, Pflichtpunkte markiert, Abschluss im ETB protokolliert
Dateien & Links Fotos und PDFs an den Einsatz hängen (landen im Bericht); Schnellzugriff auf Wetter, Karten, Hydrantenplan
PDF-Bericht Ein Klick, Abschnitte wählbar, Anhänge eingebettet – fertig für Akte und Kreisbrandinspektion
Mehrere Geräte Einsatz auf dem ELW-Laptop hosten, mit Tablet oder zweitem Laptop im LAN mitschreiben; Android-App als Begleitgerät

Mit der Tastatur

Lagebuch lässt sich ohne Maus bedienen. F1 zeigt alle Tastenkürzel, ebenso das ?-Symbol in der Kopfleiste (auf dem Telefon MEHR → TASTENKÜRZEL). Die wichtigsten:

Taste Wirkung
Strg+1 … Strg+0 Eintrag der Seitenleiste öffnen, von oben gezählt – auch Checklisten; die Ziffer steht am Eintrag
Strg+Tab / Strg+Umschalt+Tab nächstes / vorheriges Modul der Seitenleiste, auch Checklisten
Strg+N neuer ETB-Eintrag, Cursor im Feld VON
F9 zur dringendsten Meldung: Rückzugsalarm, dann Druckabfrage, fällige Aufgabe, Rückmeldung an die ILS

Die Kürzel stehen auch in der Seitenleiste und an der Meldung, zu der F9 springt. Solange ein Dialog offen ist, wirkt keines.

Lagebuch im Vergleich

Alle Angaben laut Herstellerseiten, Stand September 2026. Fehler oder Änderungen? Bitte ein Issue öffnen.

Lagebuch Papier Fireboard MissionBuddies fireplan.elw
Ohne Internet voll nutzbar ja ja Desktop-Suite ja; Stammdaten und Ticker über das Cloud-Portal (Quelle) ja, Abgleich sobald wieder online (Quelle) ja, als Browser-App (Quelle)
Daten bleiben im ELW, kein Cloud-Konto ja, eine Datei pro Einsatz ja nein, „cloudbasierte Lösung“ mit Portal-Benutzerkonto (Quelle) nein, Cloud mit Servern in Deutschland (Quelle) k. A.
Mehrere Geräte im Einsatz ja, im LAN, TLS-gepinnt, ohne Server nein ja, über Portal (Quelle) ja; gratis auf 2 Geräten, Premium unbegrenzt (Quelle) ja, live nur mit Internet (Quelle)
Atemschutzüberwachung ja, mit Sprachansage, Rückzugsalarm und Sicherheitstrupp Überwachungstafel ja, laut Produktseite (Quelle) ja, Gratis-Stufe (Quelle) k. A.
CO-Messprotokoll ja, Messreihe je Wohnung Zettel k. A. k. A. k. A.
PDF-Einsatzbericht ja, Abschnitte wählbar nein ja (Quelle) ja, modulweise Export (Quelle) k. A.
Kosten 0 €, MIT-Lizenz Papier Grundsystem kostenfrei; Module wie Einsatzführung einmalig 600 € zzgl. 90 €/Jahr Wartung (Preisliste 02/2026) Gratis-Stufe, sonst Abo (Quelle) auf Anfrage
Quellcode einsehbar ja – nein nein nein
Plattformen Windows, Linux, macOS; Android als Begleit-App – Windows, Linux, macOS; Mobile App iOS/Android Android, Windows, iOS jeder Browser (PWA)

Probefahrt in 5 Minuten

Alle Beispieldaten sind frei erfunden.

  1. Installieren – Paket für euer System aus den Releases laden, siehe Installation.
  2. Stammdaten importieren – demo-stammdaten.json herunterladen (Direktlink), in Lagebuch STAMMDATEN → IMPORTIEREN wählen, Datei öffnen, SPEICHERN. Jetzt kennen die Dropdowns zwei Wachen, sieben Fahrzeuge, ein paar Namen, Checklisten und Links.
  3. Übungseinsatz öffnen – uebung.lagebuch herunterladen (Direktlink), in Lagebuch ÖFFNEN wählen. Der Einsatz „B 3 – Zimmerbrand“ hat schon ETB-Einträge, vier Fahrzeuge, einen Angriffstrupp unter Atemschutz mit zugeordnetem Sicherheitstrupp, Aufgaben und ein CO-Messprotokoll, in dem eine Wohnung schon dreimal gemessen wurde. Über WEITER BEARBEITEN könnt ihr selbst eingreifen.
  4. Ausprobieren – einen ETB-Eintrag schreiben, im Tab ATEMSCHUTZ einen Trupp bereitstellen, einen Sicherheitstrupp zuordnen und starten, eine Aufgabe mit Timer anlegen, in der CO-MESSUNG eine Wohnung markieren oder einen weiteren Messwert eintragen.
  5. PDF EXPORTIEREN – der fertige Einsatzbericht liegt nach ein paar Sekunden auf der Platte.

Wenn ihr danach mit euren eigenen Daten weitermachen wollt: Stammdaten exportieren, masterdata.db löschen (Pfad siehe docs/master-data.md), eigene Datei importieren.

Installation

Ein Paket pro Plattform liegt bei jedem Release:

Plattform Datei
Windows lagebuch-<version>-x64.msi
Linux (Debian/Ubuntu) lagebuch_<version>_amd64.deb
Android lagebuch-<version>.apk
macOS (Apple Silicon) lagebuch-<version>-macos-arm64.dmg

Alle Pakete bringen die .NET-Laufzeit mit; es muss nichts weiter installiert werden.

Unter Windows geht es auch ohne Download über den Windows-Paket-Manager:

winget install CodeForFire.Lagebuch    # aktualisieren: winget upgrade CodeForFire.Lagebuch

winget installiert dasselbe .msi aus dem Release, geprüft gegen die im Paketkatalog hinterlegte SHA-256-Prüfsumme, für alle Benutzer (einmal Administratorrechte) und ohne SmartScreen-Warnung. Neue Versionen erscheinen dort erst Stunden bis Wochen nach dem Release.

Die Pakete sind noch nicht signiert, deshalb warnt das Betriebssystem beim ersten Start einmal:

  • Windows – am einfachsten mit winget (siehe oben), dann gibt es keine Warnung. Sonst .msi ausführen; erscheint SmartScreen, Weitere Informationen → Trotzdem ausführen.
  • macOS – .dmg öffnen, Lagebuch nach Programme ziehen, dann einmalig Rechtsklick → Öffnen (oder xattr -dr com.apple.quarantine /Applications/Lagebuch.app). Das .dmg wird auf Anfrage gebaut und an das Release angehängt.
  • Linux – sudo apt install ./lagebuch_*.deb. Bitte apt, nicht dpkg -i: das Paket deklariert seine Systemabhängigkeiten (ICU, fontconfig, X11-Bibliotheken), die nur apt auflöst. Falls doch dpkg -i: sudo apt-get -f install räumt auf.
  • Android – ab Android 7.0 (API 24); .apk öffnen und die Installation aus unbekannten Quellen für diese App einmal erlauben. Die Android-App ist ein Begleitgerät: sie verbindet sich mit einem Einsatz, der auf einem Laptop gehostet wird.

Downloads prüfen

Jedem Release liegt SHA256SUMS.txt bei, und jede Installationsdatei trägt einen Sigstore-Herkunftsnachweis aus dem Workflow-Lauf, der sie gebaut hat:

sha256sum -c SHA256SUMS.txt        # Linux, im Download-Ordner
shasum -a 256 -c SHA256SUMS.txt    # macOS
certutil -hashfile <Datei> SHA256  # Windows, mit SHA256SUMS.txt vergleichen
gh attestation verify <Datei> --repo CodeForFire/lagebuch

SHA256SUMS.txt deckt .msi, .deb und .apk ab. Das .dmg entsteht erst nach dem Release und bringt deshalb seine eigene Prüfsumme mit:

shasum -a 256 -c lagebuch-<Version>-macos-arm64.dmg.sha256   # macOS
sha256sum -c lagebuch-<Version>-macos-arm64.dmg.sha256       # Linux

So lässt sich nachweisen, dass die Datei unverändert aus diesem Repository stammt – auch solange die Pakete noch nicht signiert sind.

Status

Lagebuch ist in aktiver Entwicklung und noch vor Version 1.0; zwischen Versionen kann sich das Dateiformat ändern. Das Format ist versioniert: eine Datei aus einer neueren Version wird mit klarer Meldung abgelehnt statt beschädigt, ältere Dateien werden beim Öffnen migriert. Alle Änderungen stehen im CHANGELOG.

Für die Mehrgeräte-Verbindung zählt nicht die App-Version, sondern das Übertragungsformat: Geräte verbinden sich auch dann, wenn auf ihnen unterschiedliche Versionen laufen – etwa weil das Android-Update noch in der Prüfung bei Google Play steckt. Passen die Formate wirklich nicht zusammen, lehnt die App die Verbindung mit einer klaren Meldung ab und nennt das Gerät, das aktualisiert werden muss.

Woran wir als Nächstes arbeiten und was Version 1.0 bedeutet, stehen in der Roadmap – kurz gesagt: ab 1.0 bleibt eine Einsatzdatei dauerhaft lesbar.

Screenshots

Alle Screenshots zeigen fiktive Daten.

Startseite ETB Kräfte Kontakte
Beteiligte Aufgaben Atemschutz CO-Messung
Checkliste Stammdaten

Mitmachen & Kontakt

Lagebuch wird von CodeForFire entwickelt – Feuerwehrleuten aus Bayern, die im Einsatz selbst damit arbeiten.

  • Website mit allen Seiten für Anwender → codeforfire.github.io.
  • Fragen zur Bedienung, zur Installation oder zum ELW-Laptop → Fragen & Antworten. Dafür braucht ihr kein Bug-Ticket zu schreiben.
  • Feedback aus der Praxis ist das Wertvollste: was fehlt im ELW, was nervt, was macht Papier heute noch besser? → Ideen oder direkt ein Issue öffnen.
  • Testen auf eurem ELW-Laptop oder bei der nächsten Übung – auch ohne Programmierkenntnisse. Erzählt davon unter Aus der Praxis.
  • Entwickeln, übersetzen, dokumentieren → CONTRIBUTING.md. Einstiegsaufgaben mit Anleitung liegen unter good first issue.
  • Datenschutz – welche Daten wo liegen, was übertragen wird, was ihr selbst regeln müsst und wie ihr alles wieder löscht → Datenschutz und Sicherheit.
  • Sicherheitslücken bitte nicht öffentlich melden → SECURITY.md.

For developers

Lagebuch is an offline-first incident documentation app for fire brigades: .NET 10 + Avalonia (desktop and Android), SQLite storage (one .lagebuch file per incident), SignalR sync with TLS trust-on-first-use, and QuestPDF reports. The code and its documentation are in English, as are issues, pull requests and commit messages; the UI is German. Conventions, commit rules and the PII policy are in CONTRIBUTING.md.

Build & Test

The SDK version is pinned in global.json. Building the Android head additionally needs the .NET Android workload and a JDK ≤ 21 (newer JDKs are rejected with XA0030; use the Docker build in docker/):

dotnet workload install android   # once per machine, Android head only
dotnet build                      # or: make build (desktop only, skips Android)
dotnet test                       # or: make test

Run

dotnet run --project src/LageBuch.App/LageBuch.App.csproj   # or: make run

Common tasks

A Makefile wraps the commands above plus the Android, packaging and documentation ones. Run make for the full list:

make build            # everything except the Android head
make test             # PROJECT=... and/or FILTER=... to narrow
make run              # the desktop app
make apk              # build an installable APK in Docker
make run-android      # boot the emulator, install and launch
make package-linux    # build a local .deb
make samples          # regenerate docs/samples/uebung.lagebuch
make screenshots      # regenerate docs/screenshots/*.png (headless Skia harness)
make demo-gif         # rebuild docs/demo/einsatz-flow.gif from the screenshots

Master data

Dropdown contents (roles, vehicles, personnel, checklists, links) are never compiled into the app: a fresh install starts empty and is populated by importing a JSON file in the Stammdaten editor. The full description, storage paths, and the PII rules are in docs/master-data.md; the schema is documented by docs/master-data.example.json.

Releasing

Pushing a version tag builds and publishes the packages; see docs/releasing.md.

License

MIT

About

Offline-first incident documentation (Einsatzdokumentation) for fire brigades — .NET/Avalonia desktop, Android companion, SignalR sync, PDF reports.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages