Eigenes Werkzeug · Verwaltung
Portal Sven Brunn – mein Büro in einer Datenbank
Rechnungen, Angebote, Belege, Kunden, Auswertungen, die Pflege meiner Websites und die Sicherung aller Projekte: ein System statt über Jahre gewachsener Tabellen und Ordner. Es läuft nur auf meinem Rechner.
Meine Rolle Eigenes Projekt – Konzept, Entwicklung und täglicher Einsatz
- 97 % der Rechnungsnummern auf Belegen richtig erkannt – gemessen, ohne Sprachmodell
- 29 Prüfschritte in einem Befehl, von Typen bis zum Website-Editor
- lokal läuft nur auf dem eigenen Rechner – ohne Anmeldung, ohne Server, ohne Cloud-Speicher
- Cent Geldbeträge als ganze Zahlen – Fließkomma summiert sich falsch
Ausgangslage und Ansatz
Vorher lag alles in einer über Jahre gewachsenen Sammlung aus Excel-Tabellen und Ordnern. Jede Auswertung hieß, Zahlen aus mehreren Dateien zusammenzusuchen, und eine falsche Zahl fiel nur auf, wenn man zufällig nachrechnete.
Das Portal übernimmt den Bestand wiederholbar und gleicht ihn gegen die ursprünglichen Summen ab – weicht eine Zahl ab, liegt der Fehler im System, nicht in den Daten. Zwei Grundsätze ziehen sich durch: Nichts wird still gebucht, und nichts wird geraten. Wo eine Zuordnung nicht eindeutig ist, bleibt sie offen und wird gezählt.
Was das System kann
- 01
Rechnungen und Angebote
Kunden wählen, und Stundensatz, Zahlungsziel, Anrede und Ansprechpartner stehen. Die Nummer wird lückenlos vergeben, das PDF trägt einen GiroCode. Outlook öffnet einen Entwurf – verschickt wird nichts ohne Freigabe.
- 02
Belege mit Texterkennung
PDF ablegen, einlesen, prüfen: Lieferant, Datum, Nummer und Beträge werden ausgelesen, Scans laufen durch die Texterkennung. Erst nach der Prüfung wird die Datei sprechend umbenannt und archiviert; Dubletten erkennt eine Prüfsumme.
- 03
Kundenakte mit Dokumenten
Mehrere Ansprechpartner je Kunde, einer davon Hauptansprechpartner. Rechnungen, Angebote und Verträge als Kacheln mit Vorschau, nach Jahr gruppiert, mit Betrachter – jede Zuordnung nennt ihren Grund.
- 04
Auswertung mit Nennern
Die Leitzahl „Verdienst je Tag“ teilt das laufende Jahr durch die bisher vergangenen Tage, damit es fair neben vollen Vorjahren steht. Jede Kennzahl nennt ihre Bezugsgröße; ein Prüfskript rechnet sie unabhängig nach.
- 05
Archivieren statt Löschen
Ausgeblendetes verschwindet aus Listen und Summen, bleibt aber mit Datum und Grund erhalten und ist mit einem Klick zurück. Wo eine Summe dadurch kleiner wird, steht dabei, um wie viel.
- 06
Websites bearbeiten und veröffentlichen
Diese Website und urlaubsplaner-excel.de sind gegliedert, wie Besucher sie sehen, Deutsch und Englisch nebeneinander. Entwurf und Vorschau veröffentlichen nichts; „Veröffentlichen“ baut zur Probe, committet und überlässt den Upload der Pipeline. Das Portal kennt kein Hosting-Passwort.
- 07
Sicherungen aller Projekte
Eine Übersicht zeigt je Projekt, welche Kopien es gibt und wie alt sie sind. Archive entstehen verschlüsselt auf dem eigenen Rechner und werden nach dem Schreiben wieder geöffnet und geprüft – „gesichert“ heißt „gelesen“.
- 08
Nur lokal, gegen Zugriffe von außen gehärtet
Der Server lauscht nur auf dem eigenen Rechner. Zusätzlich weist das Portal Anfragen unter fremdem Namen und ändernde Anfragen fremder Herkunft ab – beides ist als Prüfung festgeschrieben.
- 09
Streamer-Modus und Schnellsuche
Ein Schalter verwischt alle Eurobeträge, auch in Diagrammachsen – so sind die Bilder auf dieser Seite entstanden. Strg+K springt zu jeder Seite und häufigen Aktionen.
Einblicke
Alle Bilder stammen aus einer eigenen Datenbank mit erfundenen Firmen und Zahlen; Beträge verwischt der eingebaute Streamer-Modus. Echte Kunden und Umsätze sind nicht zu sehen.
Wie es gebaut ist
- Mit KI-Agenten (Claude Code) gebaut – mit festen Regeln wie „Nachweis statt Vermutung“: Jede Zahl nennt ihre Bezugsgröße
- Im Betrieb bewusst ohne KI-Modell: Die Belegerkennung läuft über gemessene Muster und die Texterkennung des Betriebssystems – offline, ohne Kosten je Beleg, nachvollziehbar
- Die Erkennungsquote ist als Test festgeschrieben; jede Musteränderung wird gegen denselben Bestand nachgemessen
- Eine Prüfkette mit 29 Schritten läuft immer vollständig durch und arbeitet nie schreibend an den echten Daten
- Tägliche, geprüfte Sicherung der eigenen Datenbank im laufenden Betrieb
Eingesetzte Technik
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS 4
- SQLite
- Drizzle ORM
- TanStack Table
- recharts
- react-pdf
- zod
- Windows OCR
- PyMuPDF
- Git
Ein System wie dieses für Ihren Betrieb?
Erzählen Sie mir, wo es heute klemmt – ich antworte in der Regel innerhalb eines Werktags.