KartChrono.Cli 1.1.0

dotnet tool install --global KartChrono.Cli --version 1.1.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local KartChrono.Cli --version 1.1.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=KartChrono.Cli&version=1.1.0
                    
nuke :add-package KartChrono.Cli --version 1.1.0
                    

kartchrono-cli

Query and monitor KartChrono live karting timing from your terminal.

.NET build & test License: MIT

Overview

KartChrono is a karting timing system used by ~54 tracks across Europe. Each track publishes a live scoreboard on its own subdomain, fed by a WebSocket stream. kartchrono is a Native AOT command-line client for that stream: it lists tracks, prints a session snapshot, follows a leaderboard live, and shows lap-by-lap sector times for a single kart — without a browser.

Everything is passed as an argument, so the tool composes with grep, jq, watch and shell pipelines.

Installation

dotnet tool install -g KartChrono.Cli

dotnet tool install fetches a framework-dependent package that runs on any platform with the .NET runtime installed. Standalone Native AOT binaries — no runtime required — are also published for linux-x64, linux-arm64, osx-arm64, osx-x64 and win-x64, attached to each release.

Usage

kartchrono tracks                                   # list every connected track
kartchrono session --track mayak                    # one snapshot of the current run, then exit
kartchrono live    --track mayak                    # follow the leaderboard
kartchrono live    --track mayak --kart 25          # follow one kart
kartchrono laps    --track mayak --kart 25          # lap-by-lap with sector times
kartchrono records --track mayak --period week      # best laps from the archive
Option Description
--track <slug> Track subdomain, as listed by kartchrono tracks
--kart <number> Restrict output to a single kart number
--period <today\|week\|month> Range for records
--json Emit JSON instead of a table
--timeout <seconds> Stop after the given time
--no-color Disable ANSI colour
--help, --version

Design

kartchrono-cli follows the Pure ecosystem conventions:

  • Every type is a sealed record implementing exactly one interface.
  • Behaviour lives in property getters — there are no methods beyond what the language forces.
  • Values are IString, INumber<T> and IBool from Pure.Primitives.Abstractions, never raw primitives.
  • Everything is lazy and immutable; nothing is cached.
  • IAsyncEnumerable<T> carries every I/O-backed sequence — socket frames, session snapshots and rendered output lines.

Building

All dotnet commands run from ./src:

dotnet restore
dotnet build --no-restore -warnaserror
dotnet test --no-build --collect:"XPlat Code Coverage"
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.1.0 88 9/26/2026
1.0.0 104 9/8/2026
0.1.0 109 9/7/2026