# devalous17/furnicheck-bscs501 architecture

> Architecture diagram of the GitHub repository devalous17/furnicheck-bscs501, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/devalous17/furnicheck-bscs501
- Repository: https://github.com/devalous17/furnicheck-bscs501

## Overview

The tree suggests a Unity AR furniture-placement app with a bundled web interface and WebView integration. With no README or source excerpts, the workflow and connections below are inferred from filenames only; dashed edges mark unverified relationships.

Main entry points: [`Assets/Plugins/WebViewObject.cs`](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Plugins/WebViewObject.cs) (WebView Bridge), [`Assets/StreamingAssets/web/index.html`](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/index.html) (Web Page), [`Assets/StreamingAssets/web/js/app.js`](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/js/app.js) (Web App), [`Assets/Scripts/ARFurniturePlacement.cs`](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Scripts/ARFurniturePlacement.cs) (AR Placement)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web Interface"]
  node_webpage["Web Page<br/>[index.html]"]
  node_webapp["Web App<br/>[app.js]"]
  node_furnituredata["Furniture Data<br/>[data.js]"]
end

subgraph group_unity["Unity Experience"]
  node_webui["Web UI Controller<br/>[WebUIController.cs]"]
  node_placement["AR Placement"]
  node_furnituremodel["Furniture Model<br/>[scene.gltf]"]
end

subgraph group_integration["WebView Integration"]
  node_webview["WebView Bridge<br/>[WebViewObject.cs]"]
  node_nativeplugins["Platform Plugins"]
end

node_user(("App User"))

node_user -.->|"uses"| node_webpage
node_webpage -.->|"loads"| node_webapp
node_webapp -.->|"uses data"| node_furnituredata
node_webui -.->|"controls"| node_webview
node_webview -.->|"displays"| node_webpage
node_user -.->|"places furniture"| node_placement
node_placement -.->|"positions"| node_furnituremodel
node_webview -.->|"bridges to"| node_nativeplugins

click node_webpage "https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/index.html"
click node_webapp "https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/js/app.js"
click node_furnituredata "https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/js/data.js"
click node_webui "https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Scripts/WebUIController.cs"
click node_placement "https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Scripts/ARFurniturePlacement.cs"
click node_furnituremodel "https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Models/FoldingTable/scene.gltf"
click node_webview "https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Plugins/WebViewObject.cs"
click node_nativeplugins "https://github.com/devalous17/furnicheck-bscs501/tree/main/Assets/Plugins"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_webpage,node_webapp,node_furnituredata,node_user toneBlue
class node_webui,node_placement,node_furnituremodel toneAmber
class node_webview,node_nativeplugins toneMint
```

## Components

### Web Interface

- [Web Page](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/index.html): `Assets/StreamingAssets/web/index.html`
- [Web App](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/js/app.js): `Assets/StreamingAssets/web/js/app.js`
- [Furniture Data](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/StreamingAssets/web/js/data.js): `Assets/StreamingAssets/web/js/data.js`

### Unity Experience

- [Web UI Controller](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Scripts/WebUIController.cs): `Assets/Scripts/WebUIController.cs`
- [AR Placement](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Scripts/ARFurniturePlacement.cs): `Assets/Scripts/ARFurniturePlacement.cs`
- [Furniture Model](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Models/FoldingTable/scene.gltf): `Assets/Models/FoldingTable/scene.gltf`

### WebView Integration

- [WebView Bridge](https://github.com/devalous17/furnicheck-bscs501/blob/main/Assets/Plugins/WebViewObject.cs): `Assets/Plugins/WebViewObject.cs`
- [Platform Plugins](https://github.com/devalous17/furnicheck-bscs501/tree/main/Assets/Plugins): `Assets/Plugins`

### Other components

- **App User**

## Connections

- App User → Web Page: uses
- Web Page → Web App: loads
- Web App → Furniture Data: uses data
- Web UI Controller → WebView Bridge: controls
- WebView Bridge → Web Page: displays
- App User → AR Placement: places furniture
- AR Placement → Furniture Model: positions
- WebView Bridge → Platform Plugins: bridges to
