Interactive functional E6-B flight computer and vector physics simulator built with plain JavaScript, Matter.js, and a zero-dependency Node.js development server.
This repository contains a browser-based aviation tool that combines:
- Wind triangle navigation calculations
- Atmospherics and True Airspeed (TAS) computation
- Fuel burn and estimated time en route (ETE) planning
- Interactive vector visualization and HUD-style flight instrumentation
- Dynamic wind triangle solver with heading, ground speed, and wind correction angle
- Real-time crosswind and headwind/tailwind component readouts
- Atmospheric calculations for pressure altitude, outside air temperature, density altitude, and TAS
- Fuel and distance planning with duration and fuel burn estimates
- Responsive UI with slider and input bindings for instant updates
- Zero-dependency local server for easy testing and deployment
- Node.js installed on your machine
- Modern web browser
From the project directory:
npm install
npm startThen open:
http://localhost:3000/
The same local server is available via:
npm run devRun the built-in calculation tests with:
npm testThis repository is configured to publish the site at:
https://thekayrasari.github.io/e6b
To publish manually:
npm install
npm run deployThe deployment step includes a build pass that copies the static site into docs/, then publishes it to the gh-pages branch.
Automatic deployment is also configured via GitHub Actions on main branch pushes.
index.html— main application UIstyle.css— project styling and layoutapp.js— UI controller, input bindings, and application statecalculator.js— aviation math models and flight computer logicvisualizer.js— physics-driven vector visualizationserver.js— minimal Node.js static file servertest.js— test suite for calculator functionspackage.json— project metadata and scripts
- The server is intentionally simple and only serves static files from the repository root.
- The application is designed for flight planning education and simulation, not certified navigation use.
This project is licensed under the MIT License.