{"id":43829415,"url":"https://github.com/lyestarzalt/x-dispatch","last_synced_at":"2026-03-03T05:12:19.646Z","repository":{"id":336003439,"uuid":"1147106998","full_name":"lyestarzalt/x-dispatch","owner":"lyestarzalt","description":"Desktop app for visualizing X-Plane airports, navigation data, and launching flights                   ","archived":false,"fork":false,"pushed_at":"2026-02-13T10:49:38.000Z","size":20251,"stargazers_count":8,"open_issues_count":4,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-13T14:05:44.749Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lyestarzalt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-01T07:46:53.000Z","updated_at":"2026-02-13T05:25:38.000Z","dependencies_parsed_at":"2026-02-08T05:01:40.007Z","dependency_job_id":null,"html_url":"https://github.com/lyestarzalt/x-dispatch","commit_stats":null,"previous_names":["lyestarzalt/x-dispatch"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/lyestarzalt/x-dispatch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyestarzalt%2Fx-dispatch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyestarzalt%2Fx-dispatch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyestarzalt%2Fx-dispatch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyestarzalt%2Fx-dispatch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lyestarzalt","download_url":"https://codeload.github.com/lyestarzalt/x-dispatch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyestarzalt%2Fx-dispatch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29623550,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-19T13:04:20.082Z","status":"ssl_error","status_checked_at":"2026-02-19T13:03:33.775Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-06T03:07:08.972Z","updated_at":"2026-03-03T05:12:19.614Z","avatar_url":"https://github.com/lyestarzalt.png","language":"TypeScript","funding_links":["https://ko-fi.com/lyestarzalt"],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/icon.png\" alt=\"X-Dispatch\" width=\"128\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eX-Dispatch\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  Flight dispatch, airport visualization, and addon management for X-Plane 12\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/lyestarzalt/x-dispatch/releases/latest\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/lyestarzalt/x-dispatch?style=flat-square\u0026v=1\" alt=\"Release\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/lyestarzalt/x-dispatch/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/downloads/lyestarzalt/x-dispatch/total?style=flat-square\u0026v=1\" alt=\"Downloads\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/lyestarzalt/x-dispatch/blob/main/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/github/license/lyestarzalt/x-dispatch?style=flat-square\u0026v=1\" alt=\"License\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/lyestarzalt/x-dispatch/actions\"\u003e\u003cimg src=\"https://img.shields.io/github/actions/workflow/status/lyestarzalt/x-dispatch/check.yml?style=flat-square\u0026label=checks\u0026v=1\" alt=\"CI\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://discord.gg/gjpBhVjY\"\u003e\u003cimg src=\"https://img.shields.io/badge/Discord-Join-5865F2?style=flat-square\u0026logo=discord\u0026logoColor=white\" alt=\"Discord\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://ko-fi.com/lyestarzalt\"\u003e\u003cimg src=\"https://img.shields.io/badge/Ko--fi-Donate-FF5E5B?style=flat-square\u0026logo=ko-fi\u0026logoColor=white\" alt=\"Ko-fi\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Electron-47848F?style=flat-square\u0026logo=electron\u0026logoColor=white\" alt=\"Electron\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/React-61DAFB?style=flat-square\u0026logo=react\u0026logoColor=black\" alt=\"React\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/TypeScript-3178C6?style=flat-square\u0026logo=typescript\u0026logoColor=white\" alt=\"TypeScript\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/MapLibre-396CB2?style=flat-square\u0026logo=maplibre\u0026logoColor=white\" alt=\"MapLibre\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/lyestarzalt/x-dispatch/releases/latest\"\u003eDownload for Windows, macOS, Linux\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n![Map Overview](screenshots/map-overview.png)\n\nX-Plane has detailed airport diagrams but no global map to explore them. You need to already know the ICAO code to load an airport. I always wanted a world map to browse, search, and discover airports visually — so I built this.\n\nClick any airport to see detailed diagrams with runways, taxiways, gates, and markings. Import your flight plan from SimBrief. Select a starting position, configure your flight, and launch X-Plane directly.\n\nThe app has grown to include SimBrief integration, live flight tracking, SID/STAR visualization, and an addon manager to keep your aircraft and scenery organized.\n\nIf you find this useful, consider giving it a star, it helps others discover the project.\n\n\u003e **macOS Users (Sequoia/Tahoe):** The app is unsigned. To install:\n\u003e\n\u003e 1. Download the `.dmg` from [Releases](https://github.com/lyestarzalt/x-dispatch/releases/latest)\n\u003e 2. Drag to Applications and try to open - it will be blocked\n\u003e 3. Go to **System Settings → Privacy \u0026 Security** → scroll down\n\u003e 4. Click **\"Open Anyway\"** → enter your password\n\u003e\n\u003e **Or via Terminal:**\n\u003e\n\u003e ```bash\n\u003e xattr -rd com.apple.quarantine /Applications/X-Dispatch.app\n\u003e ```\n\u003e\n\u003e If you get \"Permission denied\", grant Terminal **Full Disk Access** in System Settings → Privacy \u0026 Security.\n\n## Screenshots\n\n\u003cdetails\u003e\n\u003csummary\u003eSimBrief Integration\u003c/summary\u003e\n\n![SimBrief Import](screenshots/simbrief-1.png)\n![SimBrief Flight Info](screenshots/simbrief-2.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eAddon Manager\u003c/summary\u003e\n\n![Addon Browser](screenshots/addon-manager-1.png)\n![Addon Details](screenshots/addon-manager-2.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eAirport Detail View\u003c/summary\u003e\n\n![Airport Detail](screenshots/airport-detail.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eSID/STAR Procedures\u003c/summary\u003e\n\n![Procedures](screenshots/procedures.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eStarting Position\u003c/summary\u003e\n\n![Starting Point](screenshots/starting-point-select.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eFlight Setup\u003c/summary\u003e\n\n![Flight Setup](screenshots/flight-setup.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eLive Flight Tracking\u003c/summary\u003e\n\n![Flight Tracking](screenshots/track-plane.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eFlight Plan\u003c/summary\u003e\n\n![Flight Plan](screenshots/flight-plan.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eSettings\u003c/summary\u003e\n\n![Settings](screenshots/settings.png)\n\n\u003c/details\u003e\n\n## Features\n\n### SimBrief Integration\n\n- Import your latest OFP with one click\n- Full route visualization on the map\n- Fuel breakdown: block, taxi, enroute, reserves, contingency\n- Weight summary: ZFW, TOW, landing weight\n- Flight times and distance\n- Aircraft and callsign info\n\n### Addon Manager\n\n- Browse aircraft and scenery from trusted sources\n- One-click install and update\n- Track installed addons and available updates\n- Automatic extraction to correct X-Plane folders\n- Support for ZIP, RAR, and 7z archives\n\n### Airport Visualization\n\n- Runways with surface types, dimensions, and lighting\n- Taxiways, aprons, and pavement areas\n- Runway and taxiway markings\n- Signs, windsocks, and airport boundaries\n- Runway, taxiway, and approach lighting systems\n- Gates and parking positions with heading indicators\n\n### Navigation Data\n\n- VORs, NDBs, DMEs, and ILS/LOC with course lines\n- Waypoints and fixes\n- High and low altitude airways\n- Controlled airspace boundaries\n- SID, STAR, and approach procedures with route visualization\n\n### Weather\n\n- Live METAR with decoded wind, visibility, ceiling, clouds, temperature\n- TAF forecasts\n- Flight category display (VFR/MVFR/IFR/LIFR)\n\n### Live Traffic\n\n- Real-time VATSIM network overlay\n- Pilot callsigns, aircraft types, and flight info\n\n### Flight Launcher\n\n- Aircraft browser with search and filtering\n- Filter by manufacturer or category\n- Favorites system\n- Livery selection with previews\n- Fuel load configuration\n- Time of day with sun position arc\n- Weather presets\n- Start from any gate or runway\n- Direct X-Plane launch\n\n### Live Flight Tracking\n\n- Real-time aircraft position via X-Plane WebSocket API\n- Flight info strip: IAS, GS, ALT, AGL, VS, HDG\n- Auto-center map on aircraft\n- Connection status indicator\n\n### Multiple Installations\n\n- Automatic detection of X-Plane installations\n- Easy switching between installations (Demo, Steam, etc.)\n- Full data reload on installation change\n- Navigraph data detection per installation\n\n### Data Sources\n\n- X-Plane native files (apt.dat, earth_nav.dat, earth_fix.dat, earth_awy.dat, CIFP)\n- Navigraph nav data with AIRAC cycle detection\n- ATC frequencies (Navigraph)\n- Airport metadata with transition altitudes\n- Custom scenery airport support\n\n## How It Works\n\n1. Point the app to your X-Plane installation\n2. The app parses X-Plane's data files (apt.dat, nav data, CIFP procedures) and caches them\n3. Browse the world map and click any airport\n4. Import your flight plan from SimBrief or load an FMS file\n5. Select a gate or runway, pick your aircraft, configure the flight\n6. Launch X-Plane — or if it's already running, relocate mid-flight\n\nOnce flying, connect to X-Plane's WebSocket API to track your aircraft live on the map with speed, altitude, heading, and vertical speed indicators.\n\nFor addons, browse the catalog, click install, and the app handles downloading and extracting to the correct folder.\n\n## Development\n\n### Requirements\n\n- Node.js 20+\n- X-Plane 12.4+\n\n### Setup\n\n```bash\nnpm install\nnpm start\n```\n\n### Build\n\n```bash\nnpm run make\n```\n\n## Support\n\n- **Discord**: [Join the server](https://discord.gg/gjpBhVjY) for help, feedback, and discussion\n- **Issues**: [Open an issue](https://github.com/lyestarzalt/x-dispatch/issues) for bug reports and feature requests\n- **Donate**: If you enjoy X-Dispatch, consider [buying me a coffee on Ko-fi](https://ko-fi.com/lyestarzalt)\n\n## License\n\nGPL-3.0 - See [LICENSE](LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flyestarzalt%2Fx-dispatch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flyestarzalt%2Fx-dispatch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flyestarzalt%2Fx-dispatch/lists"}