How ayush52907/droneinterface works
Drone Panel is a browser-based control surface for a Jetson drone computer. A teammate opens the panel, the UI fetches identity and live stats, then page actions use the API to inspect or operate services, files, hardware, and other drone subsystems. The backend also supports preflight, ROS 2, camera and flight-data workflows, gimbal control, alerts, and persistent terminal sessions. Edges reflect shown imports, calls, and documented API behavior; some subsystem links are based on the SOURCE INDEX rather than inspected implementation excerpts.
Main entry points: main.py FastAPI routes · app.js Panel router · api.js HTTP and sockets · preflight.py Preflight checklist
Components 26
Browser interface
- Panel router
agent/web/js/app.js - HTTP and sockets
agent/web/js/api.js - Service page
agent/web/js/pages/services.js - File manager
agent/web/js/pages/files.js - Quick actions page
agent/web/js/pages/actions.js - Map page
agent/web/js/pages/map.js - Capability pages
agent/web/js/pages
Agent and operations
- FastAPI routes
agent/app/main.py - Configuration
agent/app/config.py - Service manager
agent/app/services.py - Journal logs
agent/app/logs.py - Sandboxed files
agent/app/files.py - Web terminal
agent/app/terminal.py
Drone capabilities
- System stats
agent/app/stats.py - Hardware status
agent/app/hardware.py - ROS 2 probe
agent/app/ros.py - Camera preview
agent/app/camera.py - Gimbal control
agent/app/gimbal.py - Flight data
agent/app/flightdata.py - Map data
agent/app/mapdata.py - Payload controls
agent/app/payload.py
State and oversight
- Preflight checklist
agent/app/preflight.py - Alert rules
agent/app/alerts.py - Quick actions
agent/app/actions.py - Audit log
agent/app/audit.py
Other components
- Tailnet teammate
Connections 41
- Tailnet teammate → Panel router: opens panel
README.md - Panel router → HTTP and sockets: fetches data
agent/web/js/app.js - Panel router → Service page: routes to
agent/web/js/app.js - Panel router → File manager: routes to
agent/web/js/app.js - Panel router → Quick actions page: routes to
agent/web/js/app.js - Panel router → Map page: routes to
agent/web/js/app.js - Panel router → Capability pages: routes to
agent/web/js/app.js - Service page → HTTP and sockets: requests operations
agent/web/js/pages/services.js - File manager → HTTP and sockets: requests files
agent/web/js/pages/files.js - Quick actions page → HTTP and sockets: requests actions
agent/web/js/pages/actions.js - Map page → HTTP and sockets: requests map data
agent/web/js/pages/map.js - Capability pages → HTTP and sockets: requests features
agent/web/js/pages/dashboard.js - HTTP and sockets → FastAPI routes: dispatches HTTP
agent/web/js/api.js - FastAPI routes → Service manager: calls service handlers
agent/app/main.py - FastAPI routes → Journal logs: calls log handlers
agent/app/main.py - FastAPI routes → Sandboxed files: calls file handlers
agent/app/main.py - FastAPI routes → Web terminal: calls terminal handlers
agent/app/main.py - FastAPI routes → System stats: streams stats
agent/app/main.py - FastAPI routes → Hardware status: calls hardware handlers
agent/app/main.py - FastAPI routes → ROS 2 probe: calls ROS handlers
agent/app/main.py - FastAPI routes → Camera preview: serves preview
agent/app/main.py - FastAPI routes → Flight data: calls data handlers
agent/app/main.py - FastAPI routes → Map data: calls map handlers
agent/app/main.py - FastAPI routes → Payload controls: calls payload handlers
agent/app/main.py - FastAPI routes → Preflight checklist: calls checklist handlers
agent/app/main.py - FastAPI routes → Alert rules: calls alert handlers
agent/app/main.py - FastAPI routes → Quick actions: calls action handlers
agent/app/main.py - FastAPI routes → Audit log: records changes
agent/app/main.py - Quick actions → Service manager: operates services
agent/app/actions.py - Quick actions → Gimbal control: controls gimbal
agent/app/actions.py - Flight data → Sandboxed files: uses file operations
agent/app/flightdata.py - Journal logs → Service manager: uses service runner
agent/app/logs.py - Web terminal → Service manager: uses service runner
agent/app/terminal.py - Alert rules → Hardware status: checks hardware
agent/app/alerts.py - Alert rules → Gimbal control: checks gimbal
agent/app/alerts.py - Preflight checklist → Hardware status: checks hardware
agent/app/preflight.py - Preflight checklist → Service manager: checks services
agent/app/preflight.py - Preflight checklist → ROS 2 probe: checks ROS
agent/app/preflight.py - Preflight checklist → System stats: checks system
agent/app/preflight.py - Preflight checklist → Gimbal control: checks gimbal
agent/app/preflight.py - System stats → Alert rules: includes alerts
agent/app/stats.py