Patina: automatische Zeiterfassung, lokal auf dem Windows-Desktop
Eine schöne Windows-Desktop-Zeiterfassungs-App, die mit Tauri & React erstellt wurde.
Auf einen Blick
- Was ist das?
- Eine Tauri-und-React-Anwendung für Windows 10/11, die Vordergrundprogramme automatisch aufzeichnet, Leerlauf- und Sperrgrenzen behandelt und alle Daten ohne Konto und Cloud lokal in SQLite hält.
- Für wen ist es gedacht?
- Patina passt für Einzelpersonen auf Windows 10/11, die eine ehrliche Aufzeichnung ihrer Programmnutzung wollen, ohne manuelle Timer und ohne dass Daten ein Konto verlassen. Unpassend ist es für Teams, für Nutzer mit macOS oder Linux und für alle, die Cloud-Synchronisierung oder plattformübergreifende Auswertung brauchen, das steht ausdrücklich nicht im Umfang.
- Darf ich es kommerziell nutzen?
- Ja. MIT ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
- Wird es noch gepflegt?
- Ja. Die letzten Commits kamen vor 3 Tagen.
- In welcher Sprache ist es geschrieben?
- Hauptsächlich TypeScript, laut der Sprachstatistik von GitHub.
Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 14. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.
TIEFGEHENDE OPEN-SOURCE-ANALYSE
Patina v1.9.4: Vordergrund-Erfassung ohne Start-Stop-Timer
Patina ist eine Desktop-Anwendung für Windows 10/11, die die Nutzung des jeweils vordergrundaktiven Programms aufzeichnet. Der Kernunterschied zu klassischen Zeiterfassern: Es gibt keinen Timer, der manuell gestartet und gestoppt wird, die Nutzung wird automatisch in Zeitaufzeichnungen umgewandelt. Die Repository-Metadaten weisen TypeScript als Hauptsprache aus, 476 Sterne, 22 Forks und 10 offene Issues, der main-Zweig wurde zuletzt am 13. August 2026 gepusht, zeitgleich mit dem Release v1.9.4. Davor erschienen v1.9.3 am 10. August und v1.9.2 am 5. August 2026, die Releases kommen also im Abstand weniger Tage. Die Installation läuft über einen Download der Installationsdatei aus den GitHub-Releases, andere Wege nennt die README für Endnutzer nicht.
Grenzen bei Idle, Sperrung und abnormalen Beendigungen
Der interestingste Teil der README ist ein eigener Abschnitt zu Zuverlässigkeit, denn Zeitaufzeichnungen haben laut Projekttext nur dann langfristigen Wert, wenn man ihnen vertrauen kann. Patina behandelt dafür mehrere Grenzfälle: Im Leerlauf zählt die Zeit nicht weiter als effektive Aktivität. Nach Sperrung, Schlafmodus, Wiederaufnahme, längerer Abwesenheit und abnormalen Beendigungen werden Aufzeichnungsgrenzen gesetzt, damit Zeiträume nicht versehentlich zusammengeführt werden. Die Erkennung des Vordergrundprogramms soll temporäre Fenster und Systemrauschen herausfiltern. Für Szenarien mit wenig Interaktion wie Videos, Meetings, Kursen und Livestreams verspricht die README, dass effektive Aktivität nicht verloren geht. Rankings, Verteilungen und Summen beruhen laut Beschreibung auf effektiver Aktivitätszeit, nicht auf bloßen Öffnungsspannen, das ist die Unterscheidung, die solche Statistiken überhaupt aussagekräftig macht.
Lokale SQLite-Datenbank via @tauri-apps/plugin-sql
Die Datenhaltung ist konsequent lokal: keine Kontoregistrierung, keine Cloud-Synchronisierung, keine Serverabhängigkeit. Im Technik-Stack wird SQLite über @tauri-apps/plugin-sql als Datenbank genannt, das Rust-Backend sitzt in einer Tauri-v2-Shell. Der Nutzer behält die Kontrolle über lokale Sicherungen, deren Wiederherstellung und die Bereinigung historischer Aufzeichnungen, alle diese Vorgänge werden laut README vom Anwender ausgelöst, nicht im Hintergrund automatisiert. Eine Datenschutzfunktion verdient Beachtung: Die Erfassung von Fenstertiteln lässt sich pro Programm abschalten, was verhindert, dass sensible Titel dauerhaft gespeichert werden. Die README behauptet keine Verschlüsselung der Datenbank und beschreibt keine weiteren Zugriffskontrollen; wer die Datei schützen will, muss auf Betriebssystemebene agieren oder in der Dokumentation nachfragen.
Patina Web Sync als Browser-Erweiterung für Titeldetails
Für Browseraktivitäten existiert ein eigenes Zusatzprojekt namens Patina Web Sync, das bestimmte Webseitendetails zur erfassten Browsernutzung ergänzt. Die Erweiterung wird über den Chrome Web Store, die Firefox-Add-ons-Seite und die Microsoft-Edge-Add-ons verteilt und ist optional, die Desktop-App funktioniert auch ohne sie. Diese Trennung ist zweckmäßig, denn Browserdetails sind der Teil der Erfassung, der am meisten über Surfverhalten verrät; wer sie nicht braucht, installiert sie gar nicht erst. Die Auswertungsseite der App selbst bietet die heutige Übersicht mit effektiver Aktivität, Programmrankings und Kategorieverteilung, eine Zeitleiste mit Programmwechseln und Titeldetails nach Datum sowie Trends, Heatmaps und Programmkurven für langfristige Muster.
Selbst bauen mit npm run tauri dev und Rust
Wer den Installer nicht aus den Releases nutzen will, baut aus dem Quellcode: Vorausgesetzt werden Rust und Node.js ab Version 18. Der Ablauf laut README ist git clone https://github.com/Ceceliaee/patina.git, gefolgt von cd patina und npm install. Für die Entwicklung startet npm run tauri dev, ein Installer entsteht über npm run tauri build und landet unter src-tauri/target/release/bundle/. Der Stack dahinter: Tauri v2 als Desktop-Shell, Rust als Backend, React mit Vite und TypeScript im Frontend, Tailwind CSS für das Styling, Framer Motion für Animationen, Recharts für Diagramme und die windows crate für die Windows-Integration. Eine Build-Anleitung für Linux oder macOS fehlt, und die README sagt nicht, ob andere Plattformen unterstützt werden, der Fokus liegt offenbar ganz auf Windows.
Scope-Abgrenzung: keine Cloud-Sync, kein Teammodus
Die README zeichnet den Umfang in einem eigenen Abschnitt nach: persönliche, lokale Zeitaufzeichnung auf dem Windows-Desktop, automatische Erfassung, Auswertung, Klassifizierung, Sicherung und Wiederherstellung sowie leichte lokale Werkzeuge. Ausdrücklich nicht angestrebt sind Teamzusammenarbeit, Kontosysteme, Cloud-Synchronisierung, Multiplattform-Synchronisierung und schwere KI-Analysen. Ein Roadmap-Abschnitt fehlt, Pläne jenseits dieses Umfangs sind also nicht dokumentiert. Die leichten Werkzeuge umfassen einmalige Erinnerungen, Erinnerungen bei Nutzungslimits, Stoppuhr, Countdown und Pomodoro, deren Zustand lokal bleibt und die automatischen Aufzeichnungen nicht ersetzen. Verwalten lässt sich außerdem, welche Programme mit welchen Kategorien und Farben in die Statistik eingehen und welche komplett ausgeschlossen werden, das hält die Auswertung bei langfristiger Nutzung lesbar.
MIT-Lizenz, Ko-fi-Sponsoring und CONTRIBUTING.md
Patina steht unter der MIT-Lizenz, die Nutzung, Veränderung und Weiterverbreitung einschließlich kommerzieller Verwendung erlaubt, solange der Urheberrechtshinweis erhalten bleibt, und schließt jede Gewährleistung aus. Für Beiträge verweist die README auf CONTRIBUTING.md, dort sollen auch Produktrichtung und Architekturgrenzen erklärt sein, ein guter erster Halt, bevor ein Pull Request angeschoben wird. Fehler und Feedback mit Nachfolgebedarf laufen über GitHub Issues, für den Alltag gibt es einen QQ-Kanal. Sponsoring ist über Ko-fi möglich; die README versichert, dass Unterstützungen die Feature-Prioritäten, die Issue-Bearbeitung, die Roadmap und die Produktrichtung nicht beeinflussen. Ein Unternehmenssupport oder bezahlte Dienstleistungen werden nicht angeboten, das Projekt versteht sich als persönliches, lokal orientiertes Open-Source-Vorhaben.
Redaktionelles Fazit
Patina passt für Einzelpersonen auf Windows 10/11, die eine ehrliche Aufzeichnung ihrer Programmnutzung wollen, ohne manuelle Timer und ohne dass Daten ein Konto verlassen. Unpassend ist es für Teams, für Nutzer mit macOS oder Linux und für alle, die Cloud-Synchronisierung oder plattformübergreifende Auswertung brauchen, das steht ausdrücklich nicht im Umfang. Vor dem Alltagseinsatz lohnt ein Blick auf das neueste Release v1.9.4 und ein Test über mehrere Sperr- und Schlafzyklen, um zu prüfen, ob die Grenzbehandlung auf dem eigenen Rechner zuverlässig greift.
Community-Notizen