FleetCore Desktop is the mission control interface for the FleetCore Project, designed to manage Unmanned Aerial System (UAS) operations. Built on a hybrid architecture using Tauri (Rust) and React, it provides a secure environment for mission planning, fleet coordination, and geospatial infrastructure management.
This application serves as the primary ground control station (GCS) client for the FleetCore fleet. It interfaces with the backend orchestration layer to facilitate:
- Mission Planning: Configuration of automated survey parameters, including altitude constraints and target designations.
- Infrastructure Management: Definition of outposts and operational zones using vector-based geofencing tools.
- Fleet Telemetry: Real-time monitoring of drone connection status, battery levels, and group assignments.
- Secure Communication: Implementation of a Rust-based proxy layer to handle authenticated API requests and isolate sensitive credentials.
The system utilizes a split-stack architecture to ensure performance and security:
- Runtime: Tauri v2 (utilizing system webview)
- Core Logic: Rust (Backend interactions, file system access, API proxying)
- User Interface: React 19, TypeScript, Tailwind CSS
- Geospatial Engine: Leaflet
Project dependencies are managed via Nix to ensure reproducibility across development environments.
- Nix Package Manager (with Flakes enabled)
- Git
-
Initialize Environment Enter the Nix shell to load the required toolchain (Node.js, Rust, Cargo, Tauri CLI, and system libraries):
nix develop
-
Install Dependencies
npm install
-
Local Development Start the Vite development server and the Tauri application window:
npm run tauri dev
To compile the application for production distribution:
npm run tauri buildArtifacts are generated in the src-tauri/target/release/bundle/ directory.