Skip to content

Offline Flight Planning

Merge Request Template

What

This MR implements support for offline flight planning as explored in !158 (closed)

Why

#324 (closed)

Related MRs

How

  • To get all available airport details for a country, we download data from openaip
  • We download apt data in json format during the build step for backend container and save it as an asset.
  • whitebox-plugin-flight-management then looks for this file (POC only) and loads it. It then serves airport data based on the queried name or icao.
  • The remaining feature was built using whitebox APIs.

Testing

Sandbox Hosting [auto-managed section, do not edit manually]

Sandbox Testing Instructions (if applicable)

Developer Testing Instructions

  • Setup Instructions:

    # Build dev containers with required args & temporary-dependencies
    CONTINENT='asia' COUNTRY='india' COUNTRY_CODE='IN' TEMPORARY_DEPENDENCIES=1 docker compose -f compose.dev.yml up -d --build
    
    # Run backend-dev
    docker exec -it backend-dev make run
    
    # Run frontend-dev
    docker exec -it frontend-dev make run
    
    # Optionally, you may run workers if testing with hardware
    docker exec -it backend-dev make run worker
  • Testing Steps:

Common Testing Instructions

  • Navigate through the start flight wizard to create a flight plan
  • Search and add take off location
  • Do the same for the arrival location and waypoints
  • Rearrange waypoints
  • Delete waypoints
  • Start flight
  • Open network tab and verify flight.start event to contain appropriate data
  • Refresh the page and verify on_connect event to contain appropriate data
  • Ensure the same is saved correctly in the DB.
  • Ensure flight path appears on the map during flight and in playback mode

Screenshots (if applicable)

  • [1] Adding Take Off Location image

  • [2] Flight Plan image

  • [3] Path Traced On Map image

Before Merge Checklist

  • Test all new code (unit & integration)
  • Update the documentation (if applicable).
  • Pass 2 code reviews (get two 👍 and no outstanding comment)
  • Pass 1 product review (if the code change affects users)
  • Bump versions of internal dependencies from related MRs that were merged (if applicable)
Edited by Avinash

Merge request reports

Loading