Skip to content

Tommy131/OwO-FlightAssistant

Repository files navigation

OwO! FlightAssistant

中文说明 (Chinese)

Flutter Platform License

OwO! FlightAssistant is a modular flight-companion app for desktop and mobile simulator workflows. The current frontend integrates flight monitoring, checklist execution, map visualization, airport/METAR search, flight log analysis, and middleware health diagnostics for both MSFS 2020/2024 and X-Plane 11/12.


1. 🚀 Feature Overview

1.1 Home Dashboard & Simulator Session

General Info Aircraft Info Airport Info
Home General Home Aircraft Home Airport
  • Real-time Synchronization: Seamlessly connect/disconnect simulator sessions (MSFS/X-Plane).
  • Unified Status: Track key airborne/ground data, engine parameters, and transponder status in one dashboard.
  • Intelligent Context: Automatic METAR fetching and translation for current origin/destination airports.

1.2 Airport Search & Operational Briefing

Airport Search Briefing Generator Briefing Details
Airport Search Briefing Generator Briefing Details
  • Global Airport Database: Search ICAO airports with smart suggestions and persistent favorites.
  • Deep Data Retrieval: Load detailed runway configurations, frequencies, parking stands, and live METAR.
  • Flight Briefing: Generate comprehensive operational briefing cards with fuel planning and view history records.

1.3 Checklist, Monitor, and Toolbox

Checklist Monitor (Charts) Monitor (Landing Gear) Toolbox
Checklist Monitor Charts Monitor Landing Gear Toolbox
  • SOP Checklists: Execute multi-phase checklists for A320, B737, and Generic aircraft.
  • Phase Automation: Intelligent flight phase derivation to automatically highlight relevant checklist sections.
  • Live Monitoring: Real-time charts for speed/altitude, heading compass, and interactive landing gear status.
  • Aviation Toolbox: Quick access to utility tools and reference cards for pilots.

1.4 Map Module (Layers, Weather, Airports)

Layer Panel Airport Types Airport Info Weather Radar
Map Layers Map Airport Types Map Airport Info Map Radar
  • Interactive Layers: Toggle between OSM, Esri World Imagery/Topo, and Carto map providers.
  • Taxiway Drawing: Support for manual/automatic taxiway path drawing and route management.
  • Weather Radar: Integrated RainViewer overlay with timeline playback and transparency control.
  • Airport Visualization: Dynamic rendering of airports by category with clickable detail panels.

1.5 Flight Logs & Analysis

Logs List Track View Quality Report Danger Test
Flight Logs Flight Track Flight Quality Danger Test
  • Black Box Replay: Inspect high-frequency event data and system states for post-flight review.
  • Flight Quality Scoring: Automated assessment of flight stability and safety performance.
  • Visual Track Analysis: Replay flight tracks on an interactive map with altitude/speed profiles.
  • Safety Auditing: Specialized "Danger Test" flight reports for identifying critical safety violations.

1.6 Settings & Middleware Diagnostics

Middleware Settings Map Module Settings Global Settings
Middleware Settings Map Module Settings Settings
  • Middleware Orchestration: Configure HTTP/WebSocket endpoints with built-in health diagnostics.
  • Full I18n Support: Switch between English and Simplified Chinese across the entire UI.
  • Customization: Tune map behavior, theme preferences, and localized log storage settings.

2. 📱 Supported Devices, Platforms, and Simulators

2.1 Device Layout Support

  • Mobile layout: width < 650
  • Tablet layout: width 650 - 1241
  • Desktop layout: width >= 1242

2.2 Flutter Targets in This Repository

  • Windows desktop: first-class experience and recommended for simulator operations
  • Android / iOS: available targets for mobile companion usage
  • Web: scaffolded and buildable for browser usage

2.3 Simulators

  • Microsoft Flight Simulator (2020 / 2024)
  • X-Plane (11 / 12)

3. 🏗️ Project Architecture (Frontend)

lib/
├── core/                    # App shell, localization, theme, module registry
├── modules/
│   ├── home/                # Home dashboard + simulator controls
│   ├── checklist/           # SOP checklist module
│   ├── map/                 # Interactive map + layers + weather
│   ├── airport_search/      # ICAO search, airport details, METAR
│   ├── monitor/             # Live monitor widgets and charts
│   ├── briefing/            # Flight briefing generation and history
│   ├── flight_logs/         # Flight logs and analysis views
│   ├── toolbox/             # Utility toolbox
│   └── http/                # Middleware endpoint settings + diagnostics
└── main.dart

Module registration entry: lib/modules/modules_register_entry.dart.


4. 🛠️ Installation & Usage

4.1 Download Release (Recommended)

For non-developers, the easiest way to get started is by downloading the pre-compiled packages:

  1. Visit the GitHub Releases page.
  2. Download the latest compressed archive for your platform (e.g., .zip for Windows).
  3. Extract the archive and run the executable.
  4. For detailed configuration and setup instructions, please check our Wiki.

4.2 Build from Source Code

Prerequisites

  • Flutter SDK ^3.9.2
  • A running middleware backend instance (default: http://127.0.0.1:18080)
  • Optional simulator runtime: MSFS 2020/2024 or X-Plane 11/12

Install

git clone https://github.com/Tommy131/OwO-FlightAssistant.git
cd OwO-FlightAssistant
flutter pub get

Run (Recommended: Windows Desktop)

flutter run -d windows

Alternative targets

flutter run -d android
flutter run -d ios
flutter run -d chrome

4.3 Basic Usage Flow

  1. Open Settings → Middleware Settings, set backend host/port if not default.
  2. Go to Home, connect simulator session.
  3. Use Checklist, Map, Monitor, and Airport Search modules during flight.
  4. Review post-flight insights in Flight Logs.

5. 📚 Open-Source Repositories / Packages Used


6. 📡 API Interfaces Used by Frontend

Default middleware endpoints:

  • HTTP base URL: http://127.0.0.1:18080
  • WebSocket base URL: ws://127.0.0.1:18081/api/v1/simulator/ws

Main API routes consumed:

  • GET /health
  • GET /api/v1/airport/{icao}, GET /api/v1/airport-layout/{icao}, GET /api/v1/metar/{icao}
  • GET /api/v1/airport-list, GET /api/v1/airport-suggest?q={query}, GET /api/v1/airports?min_lat=&...
  • POST /api/v1/simulator/state, POST /api/v1/simulator/connect, POST /api/v1/simulator/data, POST /api/v1/simulator/disconnect
  • GET /api/v1/simulator/ws

7. 📄 Open-Source License

This project is licensed under:

  • Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International
  • See LICENSE for full terms.

8. 👨‍💻 Developer Information


9. ⚠️ Disclaimer

This software is for simulator training, learning, and research purposes only. Do not use it for real-world flight operations.