skyterm-agent
A Python daemon that polls ADS-B (Automatic Dependent Surveillance-Broadcast) data from FlightAware and publishes it to Supabase. This agent works in conjunction with Skyterm to provide real-time flight tracking data visualization.
skyterm-agent serves as the backend data collector for the skyterm project. It continuously fetches aircraft position data and related flight information from a FlightAware station, processes it, and stores it in a Supabase database for consumption by the frontend application. This agent was was designed specifically for Piaware, but can be used with any other ADS-B source with some modifications.
- Python 3.8 or higher
- PiAware/FlightAware
- Supabase account and project credentials
-
Clone the repository:
git clone https://github.com/your-username/skyterm-agent.git cd skyterm-agent -
Install dependencies:
pip install -r requirements.txt -
Set up environment variables: Create a .env file in the project root with the following variables:
SUPABASE_URL=your_supabase_project_url SUPABASE_KEY=your_supabase_anon_key
Start the agent:
python main.py
The agent will run continuously, polling Piaware's JSON file at regular intervals and updating the Supabase database with the latest aircraft positions and flight data.
You can modify the following command line arguments:
- Polling interval
- Cleanup interval
- Fork the repository
- Create your feature branch (git checkout -b feature/amazing-feature)
- Commit your changes (git commit -m 'Add some amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
- Skyterm - Frontend application for visualizing flight data
This project is licensed under the MIT License - see the LICENSE file for details.