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.