Real-time flight tracking across all your devices
A comprehensive flight tracking platform with mobile apps and Wear OS companion
Aero is a full-stack flight tracking application that brings real-time flight information to your fingertips. Whether you're tracking your own flights, monitoring departures, or exploring aviation data, Aero provides a seamless experience across mobile, web, and wearable devices.
Key Highlights:


This monorepo is organized into distinct components, each serving a specific purpose in the Aero ecosystem.
api/ - Core REST APIThe heart of Aero, built with NestJS and TypeScript.
┌─────────────────────────────────────────┐
│ NestJS REST API Server │
├─────────────────────────────────────────┤
│ • JWT Authentication │
│ • Real-time Flight Tracking │
│ • Flight Search & Booking Management │
│ • Airport & Airline Data │
│ • User Profiles & Statistics │
│ • Redis Caching Layer │
│ • Prisma ORM + PostgreSQL │
│ • OpenAPI/Swagger Documentation │
└─────────────────────────────────────────┘
backend/ - Legacy PocketBase⚠️ Note: This was used for the initial draft and is no longer actively maintained.
app/ - Flutter Mobile AppCross-platform mobile application for iOS and Android.
Features:
wearos/ - Wear OS Companion(under development)Native Android Wear application for smartwatches.
landing/ - Marketing WebsiteModern, responsive landing page built with React and Vite.
Tech:
| Tool | Purpose | Tech |
|---|---|---|
scraper/ | Web scraping for airline data | Playwright + Bun |
scripts/ | Data management and migrations | TypeScript + Bun |
openapi/ | Auto-generated API client | Dart (from OpenAPI spec) |
Make sure you have the following installed:
cd api
pnpm install
cp .env.example .env # Configure your environment variables
pnpm run prisma migrate dev
pnpm run start:dev
API Endpoints:
http://localhost:3000http://localhost:3000/docshttp://localhost:3000/referencecd app
flutter pub get
flutter run
cd landing
bun install
bun run dev
cd scraper
bun install
bun run index.ts
cd scripts
bun install
bun run index.ts
cd api
pnpm run start:dev # Development with hot reload
pnpm run test # Run test suite
pnpm run lint # Lint code
pnpm run build # Production build
cd app
flutter run # Run on device/emulator
flutter test # Run tests
flutter build apk # Build Android APK
flutter build ios # Build iOS app
flutter build web # Build web app
Regenerate the Dart API client from the OpenAPI schema:
cd api
pnpm run build # Build API to generate schema
./generate-openapi-client.sh # Generate client
The API requires the following environment variables (create .env in api/):
# Database
DATABASE_URL="postgresql://user:password@localhost:5432/aero"
# Redis
REDIS_HOST=localhost
REDIS_PORT=6379
# Authentication
JWT_SECRET=your-secret-key
# API Keys
OPENSKY_API_KEY=your-opensky-key
# Server
PORT=3000
NODE_ENV=development
Built with ❤️ for aviation enthusiasts