Package Exports
- flight-planner
- flight-planner/aircraft
- flight-planner/format
- flight-planner/units
- flight-planner/utils
Readme
Flight Planner
A comprehensive TypeScript library for VFR flight planning and aviation weather data processing.
Features
- Flight Planning: Route planning and waypoint management
- Weather Data: METAR parsing and weather station management
- Aircraft Management: Aircraft performance and characteristics
- Navigation: Waypoint utilities and aerodrome services
- Unit Conversion: Support for various aviation units
- Type Safe: Full TypeScript support with comprehensive type definitions
Installation
npm install flight-planner
Quick Start
import { createMetarFromString, metarFlightRule, FlightRules } from 'flight-planner';
// Parse METAR data
const metar = createMetarFromString('METAR EGLL 291020Z 24015KT 9999 SCT040 18/09 Q1022');
console.log(metar.station); // 'EGLL'
console.log(metar.wind?.speed); // 15
// Check flight rules
const flightRule = metarFlightRule(metar);
console.log(flightRule === FlightRules.VFR); // true or false
Module Exports
This package provides several specialized exports for tree-shaking:
flight-planner
- Main entry pointflight-planner/aircraft
- Aircraft-related utilitiesflight-planner/units
- Unit conversion functionsflight-planner/utils
- General utilitiesflight-planner/format
- Formatting functions
API Documentation
Weather & METAR
import { createMetarFromString, formatWind, isMetarExpired } from 'flight-planner/metar';
const metar = createMetarFromString(rawMetarString);
const windDescription = formatWind(metar.wind);
const isExpired = isMetarExpired(metar);
Flight Planning
import { createFlightPlanFromString, flightPlan } from 'flight-planner/planner';
const route = createFlightPlanFromString('EGLL DCT EHAM');
const plan = flightPlan(route, options);
Unit Conversion
import { convertSpeed, convertDistance, UnitOptions } from 'flight-planner/units';
const speedInKnots = convertSpeed(100, { speed: 'kt' }); // Convert from default m/s
const distanceInNM = convertDistance(1000, { distance: 'nmi' }); // Convert from default meters
Requirements
- Node.js >= 20.0.0
- TypeScript support recommended
License
MIT ©
Contributing
Contributions are welcome! Please read our contributing guidelines and submit pull requests to our GitHub repository.