← Alle ManaScores
Alpha 30. März 2026
von Claude Code
Calc: Production Readiness Audit
Taschenrechner mit 8 Modi (Standard, Scientific, Programmer, Converter, Currency, Finance, Date, Percentage), 5 Skins, lokaler Berechnungshistorie und Formelspeicher - vollständig local-first mit Sync
Gesamtscore
Gewichteter Durchschnitt aus 8 Kategorien
45 /100
Kategorie-Scores
Backend 5
Frontend 65
Database 55
Testing 0
Deployment 35
Doku 25
Security 50
UX 75
Metriken
6.100 Lines of Code
112 Source Files
0.3 MB (Source)
0 Commits
2 Contributors
2026-03-01 Erster Commit
1 API Endpoints
0 Backend Module
22 Web Routes
8 Stores
6 Komponenten
2 DB Tabellen
0 Tests
0 Test Files
2 Sprachen
262 Max File (LOC)
audit calc production-readiness alpha
Zusammenfassung
Calc ist ein feature-reicher Taschenrechner mit 8 Berechnungsmodi, 5 visuellen Skins (HP-35, Casio fx, TI-84, Modern, Minimal) und 10 Unit-Converter-Kategorien. Voll local-first mit Dexie.js, Sync-Support und PWA. Keine Tests und keine formale Dokumentation vorhanden.
Backend (5/100)
- Kein eigenes Backend
- Nur Health-Check Endpoint (
GET /health) - Alle Berechnungen clientseitig (sicherer Expression-Parser ohne eval())
- Datenpersistenz über local-first/mana-sync
- Designentscheidung: Kein Backend nötig - reine Client-App
Frontend (65/100)
- SvelteKit 2 + Svelte 5 Runes
- Tailwind CSS 4 mit shared-tailwind Theme
- 22 Routes: Standard, Scientific, Programmer, Converter, Currency, Finance, Date, Percentage, Skins, Themes, Settings, Profile, etc.
- 6 Komponenten (5 Calculator Skins + Loading Skeleton)
- 8 Svelte 5 Rune Stores
- Sicherer Math-Expression-Parser (kein eval())
- Wissenschaftliche Konstanten (π, e, φ, √2, c, g, Avogadro, Planck)
- i18n mit svelte-i18n (DE + EN)
- PWA mit @vite-pwa/sveltekit
- Lücke: Keine CLAUDE.md, kein Error Boundary
Database (55/100)
- IndexedDB via Dexie.js (@mana/local-store)
- 2 Collections: calculations, savedFormulas
- Live Queries für reaktive Updates
- Sync-fähig über mana-sync
- Guest Seed Data für Offline-First
- Lücke: Keine serverseitige Datenbank (by design)
Testing (0/100)
- Keine Unit Tests
- Keine E2E Tests
- Keine Mock Factories
- Vitest nicht konfiguriert
- Nächster Schritt: Expression-Parser-Tests, Converter-Tests, Skin-Rendering-Tests
Security (50/100)
- Mana Core Auth Integration (Better Auth + EdDSA JWT)
- Guest Mode unterstützt
- Sicherer Expression-Parser (kein eval(), manuelles Parsing)
- CSP Headers konfiguriert
- Lücke: Kein Rate Limiting (kein Backend)
Deployment (35/100)
- Dockerfile vorhanden (Multi-Stage, node:20-alpine, Port 5026)
- Health Check konfiguriert
- Lücke: Nicht in docker-compose.macmini.yml, nicht deployed
Documentation (25/100)
- Keine CLAUDE.md
- Keine README.md
- Code gut kommentiert (Headers, Inline-Docs)
- package.json Scripts vorhanden
- Nächster Schritt: CLAUDE.md mit Architektur, Modi-Übersicht, Skin-System
UX (75/100)
- 8 Berechnungsmodi (Standard bis Finance)
- 5 historische Skins (HP-35 1972, Casio fx 1985, TI-84 2004, Modern, Minimal)
- 10 Unit-Converter-Kategorien (Länge, Gewicht, Temperatur, Volumen, Fläche, etc.)
- Berechnungshistorie mit Tags
- Formelspeicher
- Dark/Light Mode
- PWA installierbar
- Lücke: Keine Keyboard Shortcuts, keine Animationen
Top-3 Empfehlungen
- Tests schreiben - Expression-Parser und Converter sind kritisch und gut testbar
- CLAUDE.md erstellen - Architektur, Modi, Skin-System dokumentieren
- Docker Compose - In docker-compose.macmini.yml aufnehmen und deployen