A flight docket generation system for OTR Aviation that creates comprehensive PDF documents containing all required flight planning materials.
- Generate professional flight dockets with branded cover pages
- Upload flight planning documents (flight plans, mass & balance, performance data, weather, etc.)
- Automatic chart retrieval: Aerodrome charts (VAC/ADC/PDC) automatically sourced from AIP storage
- NEW: Automatic weather data fetching via CheckWX API (METAR, TAF, SIGMET)
- NEW: Automatic NOTAM fetching via Notamify API
- NEW: AIP PDF downloader for airport information by ICAO code
- Merge multiple PDF documents into a single flight docket
- Organized checklist index
- Secure file handling and storage
The application now supports automatic fetching of weather, NOTAM, and chart data:
- CheckWX API: Fetch METAR, TAF, and SIGMET data for departure, destination, and alternate airfields
- Notamify API: Fetch NOTAMs for all specified airfields
- AIP España: Fetch aerodrome charts (VAC/ADC/PDC) for Spanish airports (ICAO codes starting with LE)
See API_INTEGRATION.md for detailed setup instructions.
The application includes a script to download Aeronautical Information Publication (AIP) PDFs from the ENAIRE website for any airport by ICAO code.
Download AIP PDFs for one or more airports:
# Single airport
php scripts/download_aip_pdfs.php LEMD
# Multiple airports
php scripts/download_aip_pdfs.php LEMD LEBL LEMG
# Show help
php scripts/download_aip_pdfs.php --helpDownloaded PDFs are stored in storage/aip/ICAO_CODE/ (excluded from git).
Common Spanish airport ICAO codes: LEMD (Madrid), LEBL (Barcelona), LEMG (Málaga), LEVC (Valencia), LEAL (Alicante).
- Clone the repository
- Install dependencies:
composer install - Set up AIP storage directory structure:
mkdir -p storage/aip # Create directories for each airport, e.g.: mkdir -p storage/aip/EGMA storage/aip/LEGR # Place chart PDFs in respective airport directories # Charts should be named with identifiers: VAC, ADC, PDC, or AERODROME
- Configure CheckWX API key (optional, for weather data):
export CHECKWX_API_KEY="your-api-key-here"
- Set up web server to serve files from the
publicdirectory - Ensure storage directories are writable
- PHP 8.1 or higher
- Composer
- Web server (Apache, Nginx, etc.)
- cURL extension enabled (for API integrations)
- Optional: Ghostscript (
gs) or PDFtk for merging multiple chart PDFs (falls back to copying first file if unavailable)
- API Integration Guide - Detailed information about weather and NOTAM API integrations
- Security Guide - Security best practices and guidelines
See LICENSE for details.