Backend Systems

The host on your machine and the services behind alluno.io, both written in Rust, and what they are built from.

Section
07 / 14
Read
2 min

Two programs share this page because they share a language and most of their libraries: the host that runs on your machine, and the services that broker sessions.

Core systems

Rustlanguage

Rust for both the host and the API. Memory safety without a garbage collector is the right trade for code that touches frames every few milliseconds.

Tokio and Axumruntime

Tokio runs the async work, Axum serves HTTP. Every request and every media task is a small, cancellable future.

PostgreSQLdatabase

Accounts, machines, plans, invites and billing history, with real constraints so the data stays consistent under concurrent use.

Rediscache

Short lived state: pairing codes, one time passwords, session presence. Anything that must expire lives here.

The host

Virtual display

A kernel driver on Windows that adds a display at whatever resolution and refresh rate the client asks for, so headless machines behave like desks.

Input filter driver

Keyboard and mouse events are delivered as device input, which is why raw input games and anti cheat friendly titles read them normally.

Virtual gamepad

An Xbox compatible controller appears on the host through ViGEmBus, with rumble carried back to the pad in your hands.

Service mode

On Windows the host can run as a service, so it is reachable before anyone signs in, including the login screen and administrator prompts.

The services

ComponentJob
APIAccounts, machines, plans, invites, billing through the payment provider
SignalingIntroduces host and viewer, exchanges offers and candidates, hands out relay access
RelaysTURN for WebRTC, QUIC relays for Media over QUIC rooms, in several regions
MailerSign in links and the few emails the service sends
The web client on the other end