Air Sports Live Tracking (ASLT) is an online (live) scoring platform for aircraft competitions. Currently it is primarily focused on precision flying and air navigation race (ANR), but it also supports other task types such as poker run and the novel Air Sports Challenge.
Please join our Slack community
Our primary server is up and running at https://airsports.no/ for anyone to use free of charge. We are looking for funding to keep this service available.
ASLT can be run locally using the docker-compose.yml file, and it is designed to be deployed to GKE using helm. There are two accompanying apps, Airsports Google Play and Airsport Apple Appstore that integrate with the user management system of ASLT. The repository includes a client also for Microsoft flight simulator 2020 (MFSFS2020).
A user manual for content creators is available here. It is a bit outdated and contributions are welcome. An additional user manual for the results service can be downloaded here.
The API is documented using swagger. This guide provides a brief overview of how to use the api to create new navigation tasks and manage contestants.
ASLT uses the traccar.org open source tracking server for receiving position reports from users. This allows for support of a wide range of hardware and software trackers.
The project welcomes contributions of all kinds in the form of pull requests. Areas were contributions are specifically welcome include:
The project is currently in the early stages of open source release, so some work is required to clean up the code base to make it more easily maintainable. Check the implementation guide for some hints.
This project make use of git submodules. Be sure to correctly clone and init your submodules using the following commands:
git clone --recurse-submodules git@github.com:airsports-no/airsportslivetracking.git
If you already cloned the project or just wants to updates the submodules, use the following command from within your local copy.
git submodule update --init --recursive
Everything is built upon Django, React, and Python 3.12. Refer to the wiki for a brief description of the most important models. Information about the scoring engine and how the live tracking works is found in this wiki page
The project comes with a docker-compose.yml file that can be used to build and test locally. Simply execute
docker compose build
to build all required images.
tracker_processor: Interfaces with traccar to receive incoming position reports and executes contestant processors either internally or as kubernetes jobs.
Additional images that are part of the compose file are:
The helm chart used for production employment has a few additional dependencies:
These additional dependencies are not required for executing locally and are therefore not part of docker-compose.yml.
A full local development environment can be started by running:
docker compose up
This executes the three primary containers which also brings up the additional infrastructure containers. The Web server can be accessed at http://localhost:8002/. A default superuser is created with username test@test.com and password admin. This can be used to login through the web interface.
Source code is available at asltmsfs. Binary distribution is available at Airsports MSFS client together with user documentation. It can be used to compete in Air Sports Live Tracking tasks using Microsoft Flight Simulator 2020. By modifying the traccar server address can also be used to test locally.