diff --git a/README.md b/README.md new file mode 100644 index 0000000..c9e59fa --- /dev/null +++ b/README.md @@ -0,0 +1,227 @@ +# azaion-ui + +React SPA that serves as the **single front-end for the entire Azaion suite**. +It does not own data or business logic; it is the operator's window onto +every backend service that lives as a sibling submodule in the +[`azaion/suite`](../README.md) monorepo. + +``` +suite/ +├── annotations/ .NET 10 — Annotations / Media / Datasets / Settings +├── flights/ .NET 10 — Flights, waypoints, aircrafts, GPS SSE +├── detections/ Cython — YOLO inference (ONNX / TensorRT) +├── detections-semantic/ Cython — Semantic detection +├── loader/ Cython — Encrypted resource loader +├── gps-denied-onboard/ Python — GPS-denied positioning (UAV side) +├── gps-denied-desktop/ Python — GPS-denied positioning (operator side) +├── autopilot/ Python — UAV control via MAVLink +├── admin/ .NET 10 — Users, roles, detection classes, model versions +├── ai-training/ Python — YOLO training, ONNX export +├── satellite-provider/ .NET 10 — Google Maps tile cache +└── ui/ React 19 — ◄ this repository +``` + +For the suite-wide architecture, deployment topology, database design, and +the legacy WPF predecessor see: + +- [`suite/_docs/`](../_docs/) — system-level architecture and per-service + feature docs (canonical source of truth). +- [`_docs/legacy/wpf-era.md`](_docs/legacy/wpf-era.md) — what the + pre-rewrite Windows desktop application looked like, why the React port + exists, and which behaviours are intentionally being preserved. +- [`_docs/ui_design/`](_docs/ui_design/) — page-level wireframes + (HTML mockups + a design README) inherited from the WPF UI; the + authoritative reference for layout, keyboard shortcuts, color scheme, + affiliation icons, annotation row gradient, etc. + +> **Status.** The code currently in `src/` is a **rudimentary first cut** +> mechanically translated from the legacy WPF / XAML UI. It is not yet +> fully wired to the new suite APIs and has no test coverage. Formal +> bottom-up documentation, a test specification, a testability pass, and +> the initial test suite are being produced via the +> [`/autodev` existing-code flow](.cursor/skills/autodev/SKILL.md). When +> the documentation + safety net are in place, feature work resumes +> through the same flow. + +--- + +## What this repo is — and is not + +| | this repo (`ui/`) | the suite services | +|--|---|---| +| **Owns** | rendering, routing, client-side state, i18n, drag-and-drop, the Leaflet map, `