Zum Hauptinhalt springen
← Alle ManaScores
Beta 30. März 2026 von Claude Code

Times: Production Readiness Audit

Zeiterfassung mit Live-Timer, Projekten, Kunden, Reports, CSV-Export, Templates und Abrechnungsraten - local-first mit umfassender Dokumentation und solider Testabdeckung

Gesamtscore

Gewichteter Durchschnitt aus 8 Kategorien

55 /100

Kategorie-Scores

Backend
5
Frontend
70
Database
60
Testing
40
Deployment
45
Doku
75
Security
50
UX
80

Metriken

5.559 Lines of Code
45 Source Files
0.3 MB (Source)
0 Commits
2 Contributors
2026-03-01 Erster Commit
1 API Endpoints
0 Backend Module
20 Web Routes
6 Stores
8 Komponenten
6 DB Tabellen
30 Tests
4 Test Files
2 Sprachen
350 Max File (LOC)
audit times production-readiness beta

Zusammenfassung

Times ist eine vollwertige Zeiterfassung mit Live-Timer, Projekt-/Kunden-Management, Reports mit Charts, CSV-Export und konfigurierbaren Abrechnungsraten. Local-first mit 6 Dexie-Collections, 4 Testdateien und umfassender CLAUDE.md. Feature-komplett für den Produktiveinsatz.

Backend (5/100)

  • Kein eigenes Backend
  • Nur Health-Check Endpoint (GET /health)
  • Alle Daten über local-first/mana-sync
  • Designentscheidung: Frontend-only mit Sync, geplante Guild-Integration in v2

Frontend (70/100)

  • SvelteKit 2 + Svelte 5 Runes
  • Tailwind CSS 4
  • 20 Routes: Timer, Einträge, Projekte, Kunden, Reports, Templates, Settings
  • 8 Komponenten (TimerCard, TimerIndicator, EntryItem/List/Form, QuickStart, KeyboardShortcuts, ConfirmDialog)
  • 6 Svelte 5 Rune Stores (auth, timer, view, user-settings, theme, navigation)
  • i18n mit svelte-i18n (DE + EN)
  • PWA mit Shortcuts (“Timer starten”, “Neuer Eintrag”)
  • 3 Keyboard Shortcuts (s=Start/Stop, n=Neuer Eintrag, Esc=Schließen)
  • Lücke: Keine Skeleton-Loader, keine Drag-Reorder

Database (60/100)

  • IndexedDB via Dexie.js (@mana/local-store)
  • 6 Collections: clients, projects, timeEntries, tags, templates, settings
  • Compound-Indizes (date+projectId)
  • Live Queries mit useLiveQueryWithDefault()
  • Auto-Save alle 10 Sekunden
  • Guest Seed Data (2 Kunden, 3 Projekte, 5 Demo-Einträge)
  • Lücke: Keine serverseitige Validierung

Testing (40/100)

  • 4 Testdateien (~1.800 LOC):
    • queries.test.ts (Query-Logik)
    • types.test.ts (Typ-Validierung)
    • export.test.ts (CSV-Export)
    • rounding.test.ts (Rundungslogik)
  • Vitest konfiguriert
  • Kernlogik gut abgedeckt
  • Lücke: Keine Komponenten-Tests, keine E2E Tests

Security (50/100)

  • Mana Core Auth Integration (Better Auth + JWT)
  • Guest Mode mit AuthGate
  • Multi-User via Sync Engine
  • Lücke: Nicht in trustedOrigins, keine Input-Validierung (kein Backend)

Deployment (45/100)

  • Dockerfile vorhanden (Multi-Stage, node:20-alpine, Port 5027)
  • Health Check konfiguriert
  • Lücke: Nicht in docker-compose.macmini.yml, nicht deployed

Documentation (75/100)

  • CLAUDE.md vorhanden (8.5 KB, sehr umfassend)
  • Architektur-Diagramme (Timer-Flow, Data-Flow)
  • Feature-Liste mit Beispielen
  • Datenmodell-Schema dokumentiert
  • Projektstruktur mit Directory Tree
  • Geplante v2 Features (Guild-Integration)
  • Lücke: Keine API-Docs (kein Backend)

UX (80/100)

  • Live HH:MM:SS Timer mit 1s Tick
  • One-Click Start/Stop mit Keyboard Shortcut
  • Timer-Indicator in Navbar (sichtbar auf allen Seiten)
  • Quick-Start aus Templates oder letzten Einträgen
  • Inline-Expand Editing mit Auto-Save
  • Tag-Gruppierung mit Tagessummen
  • CSV-Export (Semikolon, UTF-8 BOM für Excel)
  • Farbcodierte Projektkarten mit Budget-Fortschrittsbalken
  • Reports mit Charts (Billable vs Non-Billable, Stunden pro Projekt/Tag)
  • Konfigurierbare Rundung (0/1/5/6/10/15 min, Up/Down/Nearest)
  • Mehrere Währungen (EUR, CHF, USD, GBP)
  • Lücke: Keine Drag-Reorder für Projekte, keine Kalenderansicht

Top-3 Empfehlungen

  1. Docker Compose - In docker-compose.macmini.yml aufnehmen und deployen
  2. E2E Tests - Timer-Flow, Eintrag-CRUD, CSV-Export testen
  3. Kalenderansicht - Wochenansicht mit Zeitblöcken für bessere Übersicht