# Spezifikation Zeiterfassungs-Tool ## Technologie-Stack ### Backend - Go mit fp-go - PostgreSQL mit ORM (GORM oder Bun) - Swagger/OpenAPI - JWT-basierte Authentifizierung ### Frontend - Next.js mit fp-ts - React und Tailwind CSS - Responsive Webdesign - Progressive Web App (PWA) ## Multi-Tenancy & Rollen - **Mandantenfähigkeit**: Isolation von Daten je Unternehmen (Tenant) - **Rollen:** Admin, Company-Admin, Manager, Auditor, User ## Datenmodelle - **Company** (Tenant) - **User** (mit Rollen, Stundenrate) - **Kunde** - **Projekt** (mit Kundenreferenz) - **Tätigkeit** (Verrechnungspreis) - **Buchung** (Zeit, User, Projekt, Tätigkeit, Beschreibung optional, Abrechenbarkeit 0-100%) ## Funktionale Anforderungen ### Version 1 - Stammdatenverwaltung (Kunden, Projekte, Tätigkeiten, User) - Zeiterfassung mit Start/Stopp-Funktion und Parameterübernahme aus letzter Buchung - Übersichtliches Dashboard mit letzten Buchungen und Tracker - Aggregierte Reports nach Zeitraum, Projekt, Kunde, Mitarbeiter mit PDF-Export - Grafische Dashboards (Diagramme) ### Version 2 - Projektverwaltung mit Sprints, Tasks - Kanban-Boards zur Aufgabenverwaltung - Direkte Verknüpfung von Tasks mit Zeitbuchungen ## Sicherheit und Datenschutz - Tenant-Isolation - TLS-Verschlüsselung und verschlüsselte Speicherung sensibler Daten - Audit-Logs (lückenlose Protokollierung) - DSGVO-konform (Datenexport, Recht auf Vergessen) ## Technische Umsetzung ### Backend-Architektur - Modulare Pakete: - Auth - Tenant - User - TimeTracking - Customer - Project - Billing - Reporting - RESTful API mit Middleware zur Tenant-Isolation ### Frontend-Komponenten - Dashboard (Tracker, letzte Buchungen) - Buchungsformular und Historie - Stammdatenverwaltung (Kunden, Projekte, Tätigkeiten) - Reporting-Seiten mit PDF-Export - Admin-Oberfläche ## Deployment & DevOps - Docker, Docker-Compose (Entwicklung) - Kubernetes-Manifeste für Produktion - CI/CD mit automatischen Tests und Deployment - Monitoring und Logging (Prometheus, Grafana, ELK) - Regelmäßige Backups, Disaster-Recovery ## Erweiterbarkeit und Integrationen - API für externe Abrechnungssysteme und Kalenderintegration - Single Sign-On (Google, Microsoft, SAML) - Plugin-System und Custom Fields für Erweiterbarkeit - Analytics und BI-Export ## Zusätzliche Funktionen - Audit-Logs wichtiger Aktionen - Benachrichtigungssystem (E-Mail, In-App) - Lokalisierung (Mehrsprachigkeit, Zeit- und Datumsformate) Diese aktualisierte Spezifikation berücksichtigt alle relevanten Punkte für eine modulare, erweiterbare und sichere Implementierung.