Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# FlightAware AeroAPI
FLIGHTAWARE_API_KEY=your-key-here

# MapTiler (for satellite tile layer)
NEXT_PUBLIC_MAPTILER_TOKEN=your-token-here

# API URL (used by web app)
NEXT_PUBLIC_API_URL=http://localhost:5005

# Database (for future use)
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/flight_tracker

# Redis (for future use)
REDIS_URL=redis://localhost:6379
44 changes: 8 additions & 36 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,37 +1,9 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# local env files
.env*.local

# vercel
.vercel

# typescript
*.tsbuildinfo

node_modules/
dist/
.next/
out/
.turbo/
.env
.env.local
*.tsbuildinfo
.DS_Store
6 changes: 0 additions & 6 deletions Dockerfile

This file was deleted.

8 changes: 0 additions & 8 deletions Dockerfile.dev

This file was deleted.

28 changes: 24 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,27 @@
## Run docker compose for development
# Flight Tracker

- docker compose -f docker-compose-dev.yml up --build
Real-time flight tracking with AI-powered travel assistance. Built by an aerospace engineer.

## Run docker compose for production
## Quick Start

- docker compose up --build
```bash
npm install
task dev # Start web (3000) + api (5001)
```

## Architecture

Monorepo with npm workspaces + Turborepo:

- `apps/web` — Next.js 16 (App Router, Tailwind, Leaflet map)
- `apps/api` — Express API (flight data, caching, AI)
- `apps/mobile` — Vite SPA + Capacitor (iOS/Android)
- `packages/types` — Shared TypeScript types
- `packages/config` — Map layers, API config, constants
- `packages/utils` — Map helpers (angle snapping, bounds check)
- `packages/ui` — Shared React components
- `packages/api-client` — API client (fetch wrappers)

## Environment

Copy `.env.example` to `.env` and fill in your API keys.
74 changes: 74 additions & 0 deletions Taskfile.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
version: "3"

includes:
db:
taskfile: taskfiles/db.yml
optional: true

tasks:
dev:
desc: Start all services (web + api)
cmds:
- npx turbo run dev

dev:web:
desc: Start web dev server only
dir: apps/web
cmds:
- npm run dev

dev:api:
desc: Start API dev server only
dir: apps/api
cmds:
- npm run dev

build:
desc: Build all packages
cmds:
- npx turbo run build

build:web:
desc: Build web app
dir: apps/web
cmds:
- npm run build

build:api:
desc: Build API
dir: apps/api
cmds:
- npm run build

build:mobile:
desc: Build mobile app (Vite + Cap sync)
dir: apps/mobile
cmds:
- npm run build
- npx cap sync

ios:
desc: Run iOS simulator
dir: apps/mobile
cmds:
- npm run build
- test -d ios || npx cap add ios
- npx cap sync
- npx cap run ios

ios:open:
desc: Open Xcode project
dir: apps/mobile
cmds:
- npx cap open ios

lint:
desc: Lint all packages
cmds:
- npx turbo run lint

clean:
desc: Clean all build artifacts
cmds:
- npx turbo run clean
- rm -rf node_modules
15 changes: 0 additions & 15 deletions api/airports.ts

This file was deleted.

15 changes: 0 additions & 15 deletions api/flights.ts

This file was deleted.

Loading