OpenRegularity Large Logo

Open Regularity Rally Platform

The ultimate open-source system for regularity (TSD) rally organizers. Configure checkpoints, track teams via real-time GPS telemetry, and automate penalty score calculations with sub-second precision.

Try Interactive Demo Try Cloud Platform Learn More
TSD Rally Mechanics

Precision Over Pure Speed:
What is Regularity?

Unlike speed rallies, Time-Speed-Distance (TSD) Regularity Rallies challenge drivers to maintain a highly specific average speed along open public roads.

Organizers set up a **Speed Table** specifying target speeds for each part of the track. Checkpoints are kept hidden from the participants. Every 0.1 seconds of deviation (being early or late) at these checkpoints results in penalty points. The crew with the fewest penalty points wins.

Dynamic Speed Tables

Target speed changes at exact distances from the starting line.

Secret Checkpoints

Control points are hidden. Drivers cannot anticipate timing checks.

TSD Timing Concept

START POINT
0.0 km • Start Time 10:00:00
Target Speed: 50.0 km/h
SECRET CHECKPOINT (CT 1) Hidden
1.25 km • Ideal Time 10:01:30
Car crossed at 10:01:30.8
+0.8s deviation = 8 Penalties
FINISH POINT
2.50 km • Ideal Time 10:03:00
End of regularity test leg

Built For Precision Rally Management

OpenRegularity provides the complete tools required to stage, track, and score time-speed-distance events with modern digital efficiency.

Event & Stage Setup

Configure multi-stage rallies, set up legs, control checkpoints (direction, location, activation distances), and define reference GPX tracks.

Multi-Source Tracking

Upload tracking data via standard GPS logs, GPX uploads, Racebox integrations, or stream directly via mobile apps and custom tracking hardware APIs.

Precision Scoring

Automatic timing interpolation calculates exact passage crossing times. Integrates speed tables to compare actual times with ideal times instantly.

Live Map Stream

WebSocket-based real-time dashboard featuring MapLibre GL maps. Monitor crew locations and see live leaderboard updates as they happen.

Interactive TSD Timing Sandbox

Experience the mathematical core of the OpenRegularity scoring engine. Calculate target times or simulate a live run.

1. TSD Ideal Time Calculator

Enter a target speed and a distance to calculate the exact duration (ideal time) it should take. You can also add an actual duration to see penalty points (1 penalty per 0.1s deviation).

Ideal Elapsed Time: 90.0 seconds
Deviation: +0.8 seconds
Calculated Penalties: 8 Points

2. Live Telemetry Simulator

Watch a simulated car stream real-time GPS coordinates. The OpenRegularity simulation engine calculates crossing events at checkpoints, showing real-time logs and penalties.

Start
CT1 (500m)
CT2 (1000m)
Finish (1500m)

Live Timing Logs

// Press "Start Simulation Run" to begin logging...

Live Scoring Results

CT 1 (500m)
--
CT 2 (1000m)
--
TOTAL SCORE
0 pts
Technology Stack

Engineered for
Maximum Reliability

OpenRegularity splits concerns between a high-performance Go backend and a highly reactive Svelte 5.0 frontend.

Go Fiber Backend: Low-latency request routing and efficient memory management to handle thousands of concurrent GPS telemetry packets.

Svelte 5.0 Dashboard: Leverages Svelte's reactive runtimes to update maps and leaderboards without layout thrashing.

NATS Messaging: Asynchronous communication bus to process live tracking events and publish changes immediately to websocket streams.

System Architecture

GPS Tracker / App
Telemetry Data
Go API Server /tracking uploads
PostgreSQL DB SQLc store
Passage Engine NATS workers
WebSocket Stream /service/ws/sstream
Svelte 5.0 App Organiser Dashboard

Deploy in Minutes

OpenRegularity is built to be self-hosted. Run it locally or scale it globally in your cloud infrastructure.

Local Development & Docker Compose

Run the entire stack locally with standard container orchestration. It bundles the Go API server, PostgreSQL database, and Caddy proxy server right out of the box.

# Clone and launch dependencies
git clone https://codeberg.org/openregularity/openregularity-server.git
cd openregularity-server/examples/sample-environment
# Launch database, NATS, and proxies
docker compose up --build
Explore Sample Environment

Production Kubernetes Manifests

Ready for live events. Scale WebSockets and parsing workers independently. Uses Kustomize structures to define namespaces, database configurations, and network security policies.

# View the K8s orchestration directory
cd openregularity-server/examples/sample-environment/k8s
# Deploy full architecture stack via kustomize
kubectl apply -k .
View Kubernetes Setup

Host Your Next TSD Rally Today

Join organizers worldwide setting up dynamic regularity rallies. Access the full frontend and backend codebases for free, or launch instantly using our managed platform.