Skip to content

Latest commit

 

History

History
35 lines (31 loc) · 8.15 KB

File metadata and controls

35 lines (31 loc) · 8.15 KB

Project Glossary

This glossary explains common DroneWorld terms for new contributors. Related paths point to useful starting places in the current repo.

Term Plain-language definition Why it matters in DroneWorld Related paths
DRV DroneReqValidator, the broader drone simulation and validation ecosystem described in the README. DroneWorld is presented as a key component of DRV, so many simulator and report terms come from that ecosystem. readme.md, sim/Dockerfile, docker-compose.yaml
DroneWorld The open source app in this repo for configuring drone simulations, dispatching backend tasks, and viewing reports. It connects the React wizard, Flask API, simulator integration, and report storage into one contributor workflow. readme.md, frontend/, backend/, sim/
AirSim The simulator API/client interface used by backend missions and monitors. The backend writes AirSim-compatible settings.json files and connects through AirSim RPC before running real tasks. backend/PythonClient/airsim/, backend/PythonClient/multirotor/client_factory.py, backend/PythonClient/multirotor/control/simulation_task_manager.py
Cosys-AirSim The AirSim-compatible simulator variant referenced by backend settings-generation comments. The backend forces SettingsVersion = 2.0 for the expected Cosys-AirSim settings schema. backend/PythonClient/multirotor/control/simulation_task_manager.py
DRV-Unreal The Unreal-based simulator container built from release assets. Full real-simulator runs depend on this service; mock mode avoids it for frontend/backend development. sim/Dockerfile, docker-compose.yaml, readme.md
Cesium 3D geospatial globe and terrain library used in the frontend. The wizard uses Cesium to display the scenario map, terrain, drones, and drawn zones. frontend/src/components/cesium/CesiumMap.jsx, frontend/package.json
Resium React bindings for Cesium. Resium lets the React app render Cesium Viewer, Entity, and camera components declaratively. frontend/src/components/cesium/CesiumMap.jsx, frontend/src/components/cesium/DroneDragAndDrop.jsx, frontend/package.json
OPFS Origin Private File System, a browser-private storage API exposed through navigator.storage.getDirectory(). Saved settings use OPFS so contributors can keep settings.json and task.json bundles in the browser without uploading them to the backend. frontend/src/services/savedSettingsStorage.js
FuzzyTest A task payload section that asks the backend to run a parameter sweep, currently used by the task manager for wind or speed variation. It changes backend execution from one regular batch to multiple fuzzy report sub-runs. Saved replay rejects _prebuilt_settings combined with FuzzyTest. backend/PythonClient/server/simulation_server.py, backend/PythonClient/multirotor/control/simulation_task_manager.py, frontend/src/utils/taskPayload.js
SADE Project term for safety/no-fly zones drawn as rectangular regions on the Cesium map; the inspected repo does not define the acronym expansion. SADE zones are part of environment configuration and can be included in the task payload as environment.Sades. frontend/src/components/cesium/DrawSadeZone.jsx, frontend/src/model/EnvironmentModel.js, frontend/src/utils/taskPayload.js
monitor Backend runtime check that observes a mission and emits report content, such as collision, waypoint, drift, separation, or battery checks. Monitors turn a simulation run into pass/fail evidence and report artifacts. backend/PythonClient/multirotor/monitor/, backend/PythonClient/multirotor/control/simulation_task_manager.py, frontend/src/components/MonitorControl.jsx
mission Backend runtime action that commands a drone through a task, such as flying to points or following a path. Missions are dynamically loaded from task payload names and paired with drones before monitors run. backend/PythonClient/multirotor/mission/, backend/PythonClient/multirotor/control/simulation_task_manager.py
mock simulator Lightweight backend task manager used when SIMULATOR_TYPE=mock. It lets contributors test API calls, task submission, saved replay, and report listing without building or running DRV-Unreal. backend/mock_simulator/mock_task_manager.py, backend/PythonClient/server/simulation_server.py
settings.json AirSim/Cosys-AirSim simulator configuration generated by the backend or saved by the frontend. Real simulator runs read it from the AirSim documents directory, and saved settings bundles store it for replay/download. backend/PythonClient/multirotor/control/simulation_task_manager.py, frontend/src/services/savedSettingsStorage.js, config/airsim/settings.json
task.json The frontend/backend task payload shape that contains Drones, environment, optional monitors, and optional FuzzyTest. Saved settings replay needs the original task payload to rebuild missions and monitors while reusing prebuilt settings. frontend/src/utils/taskPayload.js, frontend/src/services/savedSettingsStorage.js, backend/PythonClient/server/simulation_server.py
cesium.json Small simulator-side file containing geographic origin coordinates. The backend writes it from the task origin so the simulator and Cesium-origin behavior stay aligned. backend/PythonClient/multirotor/control/simulation_task_manager.py, config/airsim/cesium.json
AirSim RPC The TCP RPC connection used by backend missions and monitors to control or query the simulator. Real task execution waits for this connection before resetting the scene and running mission/monitor threads. backend/PythonClient/multirotor/client_factory.py, backend/PythonClient/multirotor/control/simulation_task_manager.py
Pixel Streaming Unreal Engine streaming path exposed as a WebSocket-like frontend URL in compose. It is the intended path for simulator visual streaming, separate from the REST API and AirSim RPC control path. docker-compose.yaml, docker-compose.dev.yaml, readme.md
Nominatim OpenStreetMap reverse-geocoding service used by frontend saved-settings metadata. Saved configuration names and descriptions can include human-readable location context derived from coordinates. frontend/src/services/locationNameResolver.js, frontend/src/services/savedSettingsStorage.js
GCS Google Cloud Storage. One backend storage option can upload report artifacts to a GCS bucket, or to fake GCS for local emulator testing. backend/PythonClient/multirotor/storage/storage_config.py, backend/PythonClient/multirotor/storage/gcs_storage_service.py, docker-compose.yaml
Google Drive storage Backend storage option that uploads report artifacts into a configured Google Drive folder. It provides another report persistence target beyond local files and GCS. backend/PythonClient/multirotor/storage/storage_config.py, backend/PythonClient/multirotor/storage/gd_storage_service.py
Swagger/OpenAPI API documentation/spec format served by the Flask backend. Contributors can inspect routes at /api/docs and export JSON from /apispec.json. backend/PythonClient/server/simulation_server.py, docs/api/swagger.md
Flasgger Python package used to generate Swagger UI/OpenAPI docs from Flask route metadata. It is the implementation behind DroneWorld's backend API documentation page. backend/PythonClient/server/simulation_server.py, backend/requirements.txt
MUI Material UI, the React component library used for much of the frontend interface. Wizard controls, dialogs, tables, tabs, alerts, and layout components come from MUI. frontend/package.json, frontend/src/components/
CRACO Create React App Configuration Override. DroneWorld uses CRACO with craco-cesium so the CRA-based frontend can build Cesium correctly without ejecting. frontend/craco.config.js, frontend/package.json

Contributor Tip

When a term appears in a bug report or PR, trace it through the files listed above before changing behavior. Most DroneWorld issues cross at least two boundaries: frontend payload shape, backend settings generation, simulator runtime behavior, and report storage.