A web-based calculator to help pilots estimate costs for flight training certifications including Instrument Rating, Commercial Pilot License, and CFI.
Simply open the HTML file in your browser:
# Clone or download the repository
git clone https://github.com/ryakel/flight-budget.git
cd flight-budget
# Open in your default browser
open app/index.html
# Or on Linux: xdg-open app/index.html
# Or on Windows: start app/index.htmlAll features work directly in the browser with no dependencies or server required!
For production hosting or self-hosting:
# Basic deployment (without FAA lookup)
docker run -d -p 8181:80 ryakel/flight-budget:latest
# Or with FAA lookup enabled (requires tail-lookup service)
docker-compose --profile faa-lookup up -d
# Access at http://localhost:8181See Deployment Guide and infrastructure/examples/ for complete setup instructions.
- ๐ Guided Onboarding Wizard - Three pathways: manual entry, ForeFlight import, or load saved budget
- ๐ Import ForeFlight logbook (CSV) to track current hours
- ๐ Optional FAA Aircraft Lookup - Automatically verify US aircraft data from FAA registry
โ๏ธ Calculate costs for multiple aircraft with wet/dry rates- ๐ Visual budget breakdown with charts
- ๐พ Save and load budget configurations
- ๐ Export budget reports to PDF
- ๐ฏ Track progress toward certification requirements
- ๐ท๏ธ Data source badges (FAA Verified / ForeFlight)
๐ Complete Documentation Wiki
- Quick Start Guide - Get running in 5 minutes
- Onboarding Flow - New user wizard and setup guide
- Aircraft Management - Aircraft setup and CSV import
- Pre-Deployment Checklist - Setup guide for first deployment
- Deployment Guide - Portainer setup with webhooks
- Branch Strategy - Git workflow and branching model
๐ View Full Wiki for complete documentation including:
- Development guides and workflows
- Docker and container setup
- CI/CD automation
- Dependency management
- Project structure and history
flight_budget/
โโโ app/ # Application files (deployed in container)
โ โโโ index.html # Main HTML
โ โโโ css/ # Stylesheets
โ โโโ js/ # JavaScript
โ โโโ libs/ # Vendored libraries
โ โโโ data/ # Persistent storage
โโโ wiki/ # Documentation (GitHub Wiki)
โโโ infrastructure/ # Docker & deployment configs
โโโ .github/ # CI/CD workflows
# Open app/index.html in a browser
open app/index.html
# Or use a local server
python3 -m http.server 8000 --directory app# Build
docker build -t ryakel/flight-budget:latest -f infrastructure/Dockerfile .
# Run
docker run -d -p 8181:80 ryakel/flight-budget:latestSee DEPLOYMENT.md for complete Portainer setup with automated webhooks.
- Frontend: Pure HTML/CSS/JavaScript (no framework)
- Charts: Chart.js
- CSV Parsing: PapaParse
- PDF Export: html2pdf.js
- Container: nginx:alpine (~30MB)
- Optional Services:
- tail-lookup - FAA aircraft data lookup (Python + SQLite, ~256MB)
- Deployment: Docker + Portainer
Contributions welcome! Please read our contributing guidelines first.
This project is licensed under the MIT License.
Copyright (c) 2024-2025 FliteAxis
See the LICENSE file for full details.
- ๐ Documentation Wiki
- ๐ Report Issues
- ๐ฌ Discussions
ryakel
- Docker Hub: ryakel/flight-budget
- GitHub: ryakel/flight-budget
๐ซ Made with ๐ by ๐จโ