ArbeitszeitCheck ist eine Zeiterfassungs‑App für Nextcloud, die explizit auf deutsches Arbeitszeitgesetz (ArbZG) und DSGVO/ GDPR ausgerichtet ist.
Die App läuft vollständig innerhalb Ihrer selbst gehosteten Nextcloud‑Instanz – keine externen Cloud‑Dienste, keine Telemetrie.
- Rechtskonforme Zeiterfassung: Kommen/Gehen, Pausen, manuelle Einträge mit Begründung
- ArbZG‑Compliance:
- Max. tägliche Arbeitszeit (8h, erweiterbar auf 10h, reine Arbeitszeit ohne Pausen)
- Wöchentliche 48‑Stunden‑Durchschnittsprüfung (6‑Monats‑Zeitraum, Manager‑Warnungen)
- Automatische Pausenberechnung nach ArbZG §4 (30/45 Minuten, nur Pausen ≥ 15 Minuten)
- Ruhezeiten (11h) mit Blockierung von Clock‑In und manuellen Einträgen
- Erkennung von Nacht‑, Sonn‑ und Feiertagsarbeit inkl. Dokumentation
- Abwesenheitsmanagement: Urlaub, Krankheit, Sonderurlaub, unbezahlter Urlaub mit Genehmigungsworkflow; Resturlaub / Vorjahres‑Tage mit konfigurierbarem Ablaufdatum (z. B. 31.03.), FIFO‑Verbrauch, Admin‑Pflege und optional CSV‑Import (
occ arbeitszeitcheck:import-vacation-balance) - Team‑ und Manager‑Ansicht: Genehmigungen, Team‑Übersichten, Compliance‑Status
- Berichte & Exporte: Tages/Wochen/Monats‑Reports, Overtime‑Reports, Absenzberichte, DATEV‑Export
- Audit‑Logs: Lückenlose Nachvollziehbarkeit von Änderungen an Zeiten, Abwesenheiten und Einstellungen
- Revisionssichere Monatsfinalisierung (optional, Admin‑Schalter): Kalendermonat mit Snapshot, Hash und PDF‑Nachweis abschließen; finalisierte Monate bleiben gesperrt, bis eine Administratorin/ein Administrator mit Begründung wieder öffnet
- DSGVO‑Support: Exporte, Löschkonzepte (unter Beachtung der gesetzlichen Aufbewahrung), DPIA‑/Verarbeitungsverzeichnis‑Vorlagen
Rechtlicher Hinweis (DE):
ArbeitszeitCheck unterstützt Arbeitgeber und Administratoren bei der technisch sauberen Umsetzung von ArbZG‑ und DSGVO‑Anforderungen (z. B. Höchstarbeitszeit, Pausen, Ruhezeiten, Aufzeichnungspflichten).
Die App ersetzt keine individuelle Rechtsberatung. Arbeitgeber bleiben rechtlich dafür verantwortlich,
- wie Arbeitszeitmodelle, Betriebsvereinbarungen und Tarifverträge gestaltet sind,
- wie Konfigurationen (Grenzwerte, Ausnahmen, Aufbewahrungsfristen) gewählt werden und
- wie die erfassten Daten ausgewertet und für arbeitsrechtliche Entscheidungen verwendet werden.
Prüfen Sie Konfiguration, Prozesse und Texte bei Bedarf mit Ihrer Rechtsabteilung oder einem Fachanwalt für Arbeitsrecht.
Legal notice (EN):
ArbeitszeitCheck helps organizations implement technical controls for German working time law (ArbZG) and GDPR (e.g. maximum working hours, breaks, rest periods, record‑keeping).
The app is not a substitute for legal advice. Employers remain legally responsible for:
- the design of working time models, collective agreements and internal policies,
- the chosen configuration (limits, exceptions, retention periods), and
- how recorded data is interpreted and used for HR / legal decisions.
Always review your setup with your legal counsel if in doubt.
Aus dem Nextcloud App Store (empfohlen)
- Als Nextcloud‑Administrator anmelden
- „Apps“ → „Organisation“ / „Produktivität“ öffnen
- Nach „ArbeitszeitCheck“ oder „TimeGuard“ suchen
- App herunterladen und aktivieren
Manuelle Installation aus Git
git clone https://github.com/aSoftwareByDesignRepository/nextcloud-arbeitszeitcheck.git /path/to/nextcloud/apps/arbeitszeitcheck
cd /path/to/nextcloud
# Optional: PHP‑/JS‑Abhängigkeiten (falls nicht über Release‑Tarball installiert)
# cd apps/arbeitszeitcheck && composer install && npm install
php occ app:enable arbeitszeitcheckUnterstützte Umgebungen:
- Nextcloud 32, 33, 34, 35, 36
- PHP 8.1–8.4
- Datenbanken: MySQL/MariaDB, PostgreSQL, SQLite (für kleinere Installationen)
- Versionshistorie:
CHANGELOG.md(EN) /CHANGELOG.de.md(DE) — Release- und Änderungsübersicht (Keep a Changelog).
Index und Kurzbeschreibungen: docs/README.md. Mitgelieferte Dokumente im Ordner docs/:
- Nutzer
User-Manual.de.md/User-Manual.en.md— Kurzanleitung (u. a. Kalenderansicht in der App vs. Nextcloud-Kalender-App; keine CalDAV-Synchronisation)
- Compliance
Compliance-Implementation.de.md/Compliance-Implementation.en.md— technische Umsetzung der ArbZG‑RegelnGDPR-Compliance-Guide.en.md— Betrieb der App im Einklang mit DSGVO/GDPR
- Entwicklung
Developer-Documentation.en.md— Architekturüberblick und Hinweise für Beitragende
Weitere interne Arbeits‑ und Compliance‑Dokumente (z. B. erweiterte Rollenmatrix, Store‑Publishing‑How‑to) können in einem separaten Repository gepflegt werden.
Hinweis Kalender: ArbeitszeitCheck synchronisiert nicht mit der Nextcloud-Kalender-App (CalDAV). Die integrierte Monatsansicht gehört zur App; optional können E-Mails mit .ics-Anhang zum manuellen Import versendet werden.
ArbeitszeitCheck wird von Software by Design entwickelt und gepflegt.
Weitere Informationen zu Projekten, Leistungen und Kontaktmöglichkeiten finden Sie auf der Website: https://software-by-design.de/
Für Anfragen per E-Mail erreichen Sie uns unter: info@software-by-design.de
Maintainer & Support (EN):
ArbeitszeitCheck is developed and maintained by Software by Design.
For more information about projects, services and how to get in touch, visit: https://software-by-design.de/
You can also contact us via e-mail: info@software-by-design.de
- App‑Metadaten:
appinfo/info.xml(Name, Beschreibung, Version, Abhängigkeiten) - Lizenz:
LICENSE(AGPL‑3.0 oder kompatibel, siehe Datei) - Icon:
app.svgbzw.img/app.svg - Screenshots: im Verzeichnis
screenshots/- Beschreibung und erwartete Dateien in
screenshots/README.md
- Beschreibung und erwartete Dateien in
Diese Dateien werden vom Nextcloud App Store für Listung, Detailseite und Review verwendet.
Voraussetzungen: Node.js 20 oder 22 und npm 10+ (siehe package.json → engines), Composer, PHPUnit über composer.json.
- PHP:
composer test(alle Suites),composer test:unit,composer test:integration(Integration untertests/Integration/), optionalcomposer test:coverage - PHP im Docker‑Stack dieses Monorepos: vom Nextcloud‑Server‑Root
./docker/run-app-phpunit.sh arbeitszeitcheckoder in der Appcomposer test:dockerbzw.npm run test:php:docker - JavaScript (Vitest):
npm test, bei Bedarfnpm run test:watch - Lint:
npm run lint,npm run stylelint(sowiecomposer lintfür PHP‑Syntaxcheck unterlib/) - E2E (Playwright):
npm run e2e— erfordert laufende Nextcloud‑Instanz und Umgebungsvariablen (NC_BASE_URL, Testnutzer); siehedocs/Developer-Documentation.en.md - Alle Tests im Container (Hilfsskript):
scripts/run-tests-docker.shvom App‑ bzw. Repo‑Kontext
Hinweis: npm run build ist ein Platzhalter (kein Bundler‑Build; Frontend ist Vanilla‑JS mit PHP‑Templates).
- One URL resolution path: Frontend requests should use
ArbeitszeitCheckUtils.ajax(...)(orArbeitszeitCheckUtils.resolveUrl(...)when usingfetchexplicitly) to normalize app URLs reliably on both pretty-URL and/index.phpinstallations. - Strict external-call policy:
ArbeitszeitCheckUtils.ajax(...)blocks cross-origin URLs by default. External calls require explicit opt-in viaallowExternal: true. - Lint enforcement: ESLint rejects raw
fetch('/apps/arbeitszeitcheck/...')and implicit externalfetch(...)patterns outside approved abstractions. - Mobile/iPhone consistency: Shared layout styles in
css/common/include safe-area-aware spacing and touch-target improvements (WCAG 2.1 AA focus) for user and manager pages.
Weitere Details zur Architektur und zu Beitrag‑Richtlinien finden sich in docs/Developer-Documentation.en.md.