A Flutter app that runs next to DJI Fly without the DJI SDK. It receives the aircraft's Remote ID (Bluetooth, BT5, Wi-Fi NaN and Beacon) in a foreground service, streams the paired aircraft to the hub over /ws/device, and turns take-off to landing into a logbook entry filed through /api/flights, queued when offline. Covers phases A0-A3 of the Fly Agent plan; needs no server change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 lines
1.3 KiB
YAML
46 lines
1.3 KiB
YAML
name: pilotvault_fly_agent
|
|
description: "PilotVault Fly Agent — companion app that runs next to DJI Fly: Remote ID receiver, live uplink and logbook filing. Uses no DJI SDK."
|
|
publish_to: 'none'
|
|
|
|
version: 0.1.0+1
|
|
|
|
environment:
|
|
sdk: ^3.6.2
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
|
|
# Auth token, server URL, Remote ID pairing, the open session and the
|
|
# upload queue all persist across launches.
|
|
shared_preferences: ^2.5.6
|
|
# API Server REST calls (login, drones, flights, weather).
|
|
http: ^1.6.0
|
|
# The pilot's own position: briefing weather, distance to the aircraft,
|
|
# and the pilot fix sent with the live uplink.
|
|
geolocator: ^14.1.2
|
|
# Bluetooth scan / nearby Wi-Fi / location / notification runtime grants.
|
|
permission_handler: ^12.0.1
|
|
# Track map on the flight screens. OpenStreetMap tiles need no API key.
|
|
flutter_map: ^8.3.2
|
|
latlong2: ^0.10.1
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: ^6.0.0
|
|
|
|
flutter:
|
|
uses-material-design: true
|
|
|
|
# PilotVault brand fonts (same files as the Fly App, Google Fonts OFL).
|
|
fonts:
|
|
- family: Space Grotesk
|
|
fonts:
|
|
- asset: assets/fonts/SpaceGrotesk-VariableFont_wght.ttf
|
|
- family: Space Mono
|
|
fonts:
|
|
- asset: assets/fonts/SpaceMono-Regular.ttf
|
|
- asset: assets/fonts/SpaceMono-Bold.ttf
|
|
weight: 700
|