# MACHWEIS
**Mach’s. Beleg’s. Rechne es ab.**
## Produktansicht

MACHWEIS ist eine Local-First-Flutter-App für schnelle, kontrollierbare Leistungsnachweise im Handwerk. Die Oberfläche läuft auf iOS, Android und im Web und ist vollständig deutschsprachig.
## Aktueller Funktionsumfang
- lokale Firmen-, Kunden-, Auftrags- und Mitarbeiterdaten (SQLite auf Android/iOS, Browser-Speicher im Web)
- mobile Stammdaten-Synchronisation für Kunden, Baustellen, Aufträge, Mitarbeiterprofile und Auftragszuweisungen über die serverseitigen Push-/Pull-Endpunkte
- atomare lokale Änderungen mit Outbox, Cursor, Retry, sichtbaren Konflikten und einer ausdrücklichen Importentscheidung bei der ersten Verbindung
- unveränderliche Berichtsversionen mit sichtbarem Prüfverlauf
- persistente Offline-Synchronisationswarteschlange mit Retry-Strategie
- lokale Fotodokumentation per Kamera, Galerie oder Web-Dateiauswahl
- gebrandete PDF-Leistungsnachweise mit Unterschrift, Fotodokumentation und vorbereitetem Teilen per E-Mail
- prüfpflichtiger KI-Assistent für Baustellennotizen mit OpenAI, Google Gemini oder eigenem Proxy
- Rollen: Inhaber, Büro, Bauleiter und Monteur
- strukturierte Arbeitszeit mit Leistungsdatum, Pause und Nettozeit
- mehrere Leistungs- und Materialpositionen
- Zusatzaufträge mit Kundenbestätigung
- Vollständigkeitsprüfung vor Unterschrift
- digitale Kundenunterschrift und unveränderlicher Abschluss
- CSV-Export und vorbereitete PDF-Renderer-Schnittstelle
- responsive Smartphone- und Webnavigation
- aktuelle App-Version und Build-Nummer dauerhaft am unteren Rand der Navigation
## Lokale Entwicklung
```sh
flutter pub get
flutter analyze
flutter test
flutter run -d chrome
```
Produktkontext und technische Leitplanken stehen in [`docs/PRODUCT_BRIEF.md`](docs/PRODUCT_BRIEF.md). Architektur und Serververtrag der KI-Unterstützung beschreibt [`docs/AI_INTEGRATION.md`](docs/AI_INTEGRATION.md).
Die Stammdaten-Synchronisation ist ausschließlich für iOS und Android aktiviert. Sie verwendet das Access-Token der mobilen Anmeldung und erneuert es bei Bedarf über die bestehende Authentifizierung. Im Web bleibt die Synchronisation bewusst deaktiviert.
## Backend-Grundgerüst
Das separate PHP-8.4-REST-Grundgerüst liegt in [`backend/`](backend/README.md). Es enthält in diesem Stand ausschließlich Infrastruktur und den Health-Endpunkt; Login, Fachlogik und KI sind noch nicht enthalten.
