A comprehensive web-based SDR (Software Defined Radio) dashboard for managing radio receivers, feeds, and applications across multiple nodes.
Airwaves OS provides a unified interface for managing your entire SDR infrastructure. Whether you're tracking aircraft with ADS-B, monitoring ship traffic with AIS, or decoding aviation communications with ACARS, Airwaves OS brings everything together in one beautiful, responsive dashboard.
- Multi-Node Management - Monitor and control SDR applications across multiple Raspberry Pis or servers from a single dashboard
- Real-Time Tracking - Visualize aircraft (ADS-B) and ships (AIS) on interactive Leaflet maps
- Data Feeds - Connect your receivers to global aggregators like FlightRadar24, FlightAware, Airframes.io, and MarineTraffic
- App Catalog - Install and manage SDR applications with one click
- Live Message Streaming - View decoded messages from all your receivers in real-time
- System Monitoring - Track CPU, memory, disk usage, and temperature across all nodes
| Application | Description | Category |
|---|---|---|
| readsb | High-performance ADS-B decoder | Aviation |
| acarsdec | Multi-channel ACARS decoder | Aviation |
| acarshub | ACARS aggregator and forwarder | Aviation |
| dumpvdl2 | VDL Mode 2 message decoder | Aviation |
| rtl_airband | Multichannel AM/FM receiver | Aviation |
| AIS-Catcher | Dual-channel AIS receiver | Maritime |
| SatDump | Satellite signal processor | Satcom |
| rtl_433 | ISM band data receiver | Utility |
- FlightRadar24
- FlightAware
- Airframes.io
- Airplanes.live
- MarineTraffic
- Custom TCP/UDP destinations
| Layer | Technology |
|---|---|
| Framework | React 18 |
| Language | TypeScript 5 |
| Build Tool | Vite |
| Styling | Tailwind CSS |
| Components | shadcn/ui, Radix UI |
| Routing | Wouter |
| State | TanStack Query |
| Animations | Framer Motion |
| Maps | Leaflet, React-Leaflet |
| Charts | Recharts |
# Install dependencies
npm install
# Start development server
npm run devThe application will be available at http://localhost:5000.
# Build for production
npm run build
# Preview the build locally
npm run previewThe dist/ folder contains optimized static files that can be deployed to any hosting service.
├── client/
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ │ ├── ui/ # shadcn/ui base components
│ │ │ └── layout/ # Layout components (sidebar, header)
│ │ ├── pages/ # Page components
│ │ ├── lib/ # Utilities, mock data, stores
│ │ └── hooks/ # Custom React hooks
│ └── index.html # Entry HTML file
├── README.md
└── package.json
| Page | Description |
|---|---|
| Dashboard | System overview with stats, active apps, and quick actions |
| My Apps | Manage installed SDR applications |
| App Store | Browse and install new applications |
| Data Feeds | Configure aggregator connections with bandwidth monitoring |
| Live Messages | Real-time message stream from all decoders |
| Devices | Manage connected SDR hardware (RTL-SDR, Airspy, etc.) |
| Nodes | Multi-node system management and pairing |
| Airband | RTL Airband configuration and Icecast audio streaming |
| Map | Interactive aircraft and ship tracking visualization |
Airwaves OS is built with a focus on:
- Clarity - Information-dense dashboards that remain readable
- Responsiveness - Works on desktop, tablet, and mobile
- Dark Mode First - Optimized for low-light environments
- Real-time Updates - Live data streaming throughout the UI
The static build can be deployed to:
- Replit - Use the Deploy button
- Vercel / Netlify - Connect your repo for automatic deployments
- GitHub Pages - Push the
dist/folder togh-pagesbranch - Self-hosted - Serve with nginx, Apache, or any static file server
Contributions are welcome! Please feel free to submit issues and pull requests.
MIT License - see LICENSE for details.
Built with care for the SDR community.