3.9 KiB
RoomScan AI
RoomScan AI ist ein Starterprojekt fuer eine skalierbare iOS App zur Erstellung von 3D Raumscans. Die App soll Nutzer Schritt fuer Schritt durch einen Raumscan fuehren, Hinweise zu Geschwindigkeit, Richtung, Startpunkt und Fehlern anzeigen und am Ende ein 3D Raum-Modell visualisieren.
Die erste Version ist bewusst als React Native und Expo TypeScript Projekt aufgebaut. Sie nutzt nur notwendige Basis- und Navigationspakete, damit spaeter per expo prebuild sauber in ein natives iOS/Xcode-Projekt migriert werden kann.
Features
- HomeScreen mit Projektziel und Scan-Ablauf
- ScanScreen mit Mock-Kameraansicht
- Instructions Overlay fuer gefuehrte Hinweise wie
Langsamer bewegenoderRichtung ändern - Ergebnis Screen mit Mock 3D Ansicht
- Stack Navigation mit TypeScript-Typen
- Vorbereitete Ordnerstruktur fuer Komponenten, Screens, Navigation, Services und Theme
Tech Stack
- React Native
- Expo
- TypeScript
- React Navigation
- iOS-Zielplattform mit spaeterer Xcode-Erweiterung
- Geplante native Integration: ARKit und RoomPlan
Projektstruktur
roomscan-ai/
├── App.tsx
├── app.json
├── package.json
├── src/
│ ├── components/
│ │ ├── InstructionOverlay.tsx
│ │ ├── PrimaryButton.tsx
│ │ └── ScanProgressCard.tsx
│ ├── navigation/
│ │ ├── AppNavigator.tsx
│ │ └── types.ts
│ ├── screens/
│ │ ├── HomeScreen.tsx
│ │ ├── ResultScreen.tsx
│ │ └── ScanScreen.tsx
│ ├── services/
│ │ └── scanGuidance.ts
│ └── theme/
│ └── colors.ts
└── README.md
Installation
Voraussetzungen:
- Node.js
- npm
- Expo CLI ueber
npx expo - Fuer native iOS Builds spaeter: macOS, Xcode und Apple Developer Account
Abhaengigkeiten installieren:
npm install
Entwicklungsserver starten:
npm run start
iOS Preview starten:
npm run ios
Hinweis: Auf Windows kann npm run ios kein lokales iOS-Simulator-Build starten. Fuer echte iOS-Entwicklung wird macOS mit Xcode benoetigt.
Expo Prebuild und Xcode Vorbereitung
Das Projekt ist so vorbereitet, dass spaeter ein natives iOS-Projekt erzeugt werden kann:
npm run prebuild:ios
Dabei wird der Ordner ios/ generiert. Dieser Ordner ist aktuell in .gitignore eingetragen, weil native Dateien erst versioniert werden sollten, wenn die RoomPlan-Integration konkret umgesetzt wird.
Wichtige iOS-Vorbereitungen in app.json:
bundleIdentifier:com.roomscanai.appNSCameraUsageDescriptionfuer die spaetere Kamera- und RoomPlan-NutzungsupportsTablet: aktiviert fuer iPad-Kompatibilitaet
RoomPlan Integration
RoomPlan ist eine native iOS-Technologie von Apple und wird nicht direkt durch Expo Go bereitgestellt. Die geplante Integration erfolgt spaeter ueber ein natives iOS-Modul oder eine Xcode-Erweiterung nach expo prebuild.
Geplanter Integrationspfad:
- Expo App als UI- und Navigationsbasis beibehalten
- iOS-Projekt per
expo prebuild --platform ioserzeugen - Native RoomPlan Capture Session in Swift implementieren
- Scan-Daten an React Native uebergeben
- Ergebnisdaten als 3D Modell oder strukturierte Raumdaten anzeigen
Roadmap
- Mock UI fuer Scan Flow stabilisieren
- Gefuehrte Scan-Hinweise als State Machine modellieren
- Fehler- und Qualitaetsstatus fuer Scans erweitern
- Persistenz fuer Scan-Ergebnisse vorbereiten
- Native RoomPlan Integration in iOS/Xcode umsetzen
- 3D Ergebnisansicht mit echten RoomPlan-Daten anbinden
- Exportoptionen fuer Raumdaten pruefen
- TestFlight Build vorbereiten
- iOS App Store Veröffentlichung vorbereiten
Ziel
Ziel ist eine saubere, erweiterbare iOS App fuer gefuehrte 3D Raumscans mit einem klaren Pfad zur nativen ARKit- und RoomPlan-Integration und anschliessender Veröffentlichung im iOS App Store.