Architektur
System-Architektur
Baumplan.io basiert auf einer Client-Server-Architektur mit einem starken Fokus auf Offline-Fähigkeit.
Client (Flutter App)
Die App ist in Flutter geschrieben und läuft auf Android und iOS.
- State Management: Provider / ChangeNotifier
- Datenbank: Lokale Speicherung (JSON/Filesystem)
- Karten:
flutter_mapmit lokalen Tile-Caches
Server (Treeplan-Box)
Der Server dient als Synchronisations-Hub.
- Backend: Python (FastAPI)
- Datenbank: SQLite (via SQLAlchemy)
- Frontend: Leaflet-basiertes Dashboard (im Browser)
Synchronisation
Die Synchronisation erfolgt über eine REST-API. Änderungen werden anhand von Zeitstempeln („Last Modified“) abgeglichen.