79
News • Analytics Tool • Web3
✈️ What is PlaneCrashData?
PlaneCrashData is an open aviation safety intelligence platform that visualizes over a century of flight incident history (1919–Present) and provides instant safety score lookups for any commercial flight in the world.
💡 Why I Built It
Aviation incident data has historically been gatekept by antiquated 90s-era government websites or paywalled enterprise APIs. As both an engineer and traveler, I wanted to build a modern, high-performance platform that gives passengers and avgeeks instant clarity without sensationalism.
🏗️ Technical Architecture & Stack Deep-Dive
- Frontend & Framework: [Nuxt 4](https://nuxt.com/) (Vue 3, TypeScript) + Nuxt UI + Tailwind CSS. Fully reactive SSR application with zero-layout-shift client hydration.
- Edge Backend & Database: Cloudflare Workers + [Cloudflare D1](https://developers.cloudflare.com/d1/) (Serverless SQLite at the Edge) with Drizzle ORM. Delivers global sub-50ms query response times at ~$5/month operating cost.
- Automated Data Ingestion: Automated Nitro scheduled cron tasks run every 2 hours to fetch, sanitize, normalize, and backfill verified incidents from ASN, NTSB, and international aviation registries.
- 3D Geospatial Engine: `globe.gl` + Three.js / WebGL with custom shader pins, altitude arcs, and temporal scrubbing across 100+ years of geo-located crash data.
- Mobile Apps: Built with [Capacitor](https://capacitorjs.com/) for native distribution across iOS and Android with offline caching and native share sheets.
✨ Core Capabilities
1. 🔍 Check My Flight: Historical safety score calculation for any commercial flight number & aircraft model (Boeing 737, Airbus A320, A350, 787, etc.).
2. 🌍 3D Incident Globe: Interactive temporal scrubbing across 100+ years of aviation safety milestones with multi-filter queries (airline, manufacturer, severity).
3. 📊 Airline Safety Index: Objective incident-free passenger kilometer benchmarks and fleet safety metrics.
4. 🚨 Live Safety Ingestion: Synchronized reports every 2 hours from official safety investigation bureaus.
🛠️ Challenges & Learnings
- Rendering 10,000+ Geospatial Points in WebGL: Optimized data payloads by clustering coordinates and streaming incident data on-demand during temporal scrubbing.
- Edge Database Optimization with D1: Structured SQLite indexes for fast compound lookups on `(carrier_code, flight_number)` and `(manufacturer, model)`.
Check out the live platform at https://www.planecrashdata.com/ — I'd love feedback from fellow engineers on the edge query architecture and WebGL performance!
Built with