Since the last changelog, quite a lot changed on the APX project. For APX, this month marks the completion of the first year of development. For the overall idea, it's year 3.

Livetiming

One of the biggest extensions is the livetiming. This module is a zero configuration module (if wanted). It's integrated within the wizard and can be used if needed.

For the livetiming, the Reciever publishes event data into the timing, allowing to display entry-related messages (e. g. best laps, driver swaps, pitstops).

The livetiming requests it's data from the wizard, no additional traffic is redirected towards the server. The data persists even if a server restart is needed.

The livetiming is a Vue.js application on top of the Django module. Both parts can be modified, if needed.

Push instead of pull

The majority of the background worker within the wizard app was removed and parts of this logic are now invoked within the save routine when a server is updated. With this update, the status updates are now pushed by the reciever. So if no server is running, no data is transferred. This reduced traffic caused by the APX reciever.

Additional changes

The wiki was adapted on several articles to represent the latest status even better. The amount of hooks was extended. A new hook onTick(status) was introduced. A bunch of updates was introduced, fixing initial setup issues. I assume that either the next or the following releases will be ready to test.

The client idea

I started working on a background service worker proof of concept, testing out the idea of transactional mods for rFactor.


Photo by 贝莉儿 DANIST on Unsplash