Skip to content

Furtado-Lyle/iOS-RoomPlan

Repository files navigation

📱 RoomPlanTest

RoomPlanTest is a SwiftUI-based iOS app that leverages Apple’s RoomPlan and SwiftData frameworks to scan rooms in 3D, organize scans into folders, and manage them with rich metadata.


💫 Features

  • Room Scanning
    Use LiDAR-enabled devices to scan and capture 3D rooms as USDZ files.
  • Scan Management
    Save scans with custom names, notes, and tags, then organize them into folders.
  • Folder Organization
    Create, rename, and delete folders to keep scans neatly organized.
  • Thumbnails
    Automatically generate and display thumbnails for each scan.
  • QuickLook Preview
    Preview 3D scans directly in the app using QuickLook.
  • Export & Share
    Share USDZ files via the system share sheet.

💻 Technologies Used

  • SwiftUI for a modern, declarative interface
  • SwiftData for local data persistence
  • RoomPlan for 3D room capture and processing
  • QuickLook for in-app 3D file preview

⚙️ Requirements

  • iOS 17+
  • Xcode 15+
  • Device with LiDAR sensor (for scanning)

🏁 Getting Started

  1. Clone the repo.
  2. Open RoomPlanTest.xcodeproj in Xcode.
  3. Build & run on a LiDAR-enabled device.

🏗️ Project Structure

  • RoomPlanTestApp.swift — App entry point & SwiftData setup
  • ContentView.swift — Main tabbed interface
  • RoomscanView.swift — Scanning UI & logic
  • SavedRoomsView.swift — Scan/folder management UI
  • Models/ — SwiftData models (Scan, Folder)
  • ScanSaveSheet.swift — Sheet for entering scan metadata
  • ScanThumbnailGenerator.swift — Thumbnail generation logic

🎥 Screen Shots

Recordings demonstrating the core flows of the app.

Room Plan Scan View Scanned Model
IMG_3650 IMG_3651

📸 Screen Recs

Still captures to illustrate UI elements in action.

Room Plan Scan View Scanned Model
1 2

👮‍♂️ License

MIT License


Created by Lyle Furtado, 2025.

About

Scan, organize, and manage 3D rooms on iOS using LiDAR, RoomPlan, and SwiftUI.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages