Valorant match tracker — Python bindings
Project description
ValoTracker
A fast, privacy-first Valorant match tracker written in Rust.
Windows only. Reads from the local Riot client lockfile — no username or password required, no external account needed.
Features
- Live match table — all 10 players with rank, RR, peak rank, HS%, K/D, WR%, and party grouping, updated every 30 seconds
- Streamer-mode detection — incognito players shown with an
[S]tag - Party indicators — premade groups highlighted with icons (
★ ▲ ● ■), enemy premades tinted red - Match history — save matches to a local SQLite database and browse them
later;
[s]to save,[h]to view - Encounter tracking — see every previous saved match against a given player (the "Receipts" feature)
- Extended analytics — agent stats, map stats, smurf flagging, party win-rate breakdown, session tracking, nemesis/rivalry leaderboard
- TUI + optional GUI — rich terminal UI by default; build with
--features guifor a native egui window - Python bindings —
pip install ValoTrackerexposes the engine to Python via PyO3
Disclaimer
ValoTracker reads data from VALORANT's local client endpoints
(https://127.0.0.1:{port}) using credentials stored on your own machine.
It does not bypass any external API, inject into the game process, or
violate Riot's Terms of Service as interpreted for read-only local tooling.
Use at your own risk. The authors are not affiliated with Riot Games.
Installation
Pre-built binaries (Windows)
Download ValoTracker.exe (TUI) or ValoTracker-gui.exe (GUI) from the
latest release and
drop it anywhere on your PATH.
Build from source
# Clone
git clone https://github.com/Londopy/ValoTracker.git
cd ValoTracker
# TUI (default)
cargo build --release -p ValoTracker-tui
# Binary: target\release\ValoTracker.exe
# GUI (egui)
cargo build --release -p ValoTracker-gui --features gui
# Binary: target\release\ValoTracker-gui.exe
Requirements: Rust 1.78+, Windows 10/11, VALORANT installed and running.
Usage
TUI
ValoTracker.exe
| Key | Action |
|---|---|
r |
Force refresh |
s |
Save current match to history |
h |
Open match history |
c |
Open config editor |
j/k or ↑/↓ |
Navigate player rows |
Enter/Tab |
Open encounter history for selected player |
q / Esc |
Quit |
GUI
ValoTracker-gui.exe
Click any player with a 👁 icon to open their encounter history side panel.
Python bindings
pip install ValoTracker
import ValoTracker
client = ValoTracker.ValoTrackerClient()
client.wait_for_match() # blocks until you enter a match
players = client.get_players()
for p in players:
print(f"{p.name}#{p.tag} {p.rank_name} {p.rr}RR HS:{p.headshot_pct:.0%}")
# Party detection
from collections import defaultdict
parties = defaultdict(list)
for p in players:
parties[p.party_id].append(p.name)
for pid, members in parties.items():
if len(members) > 1:
print(f"Premade: {', '.join(members)}")
Configuration
ValoTracker stores its config at %APPDATA%\ValoTracker\config.toml. It is created
automatically on first run with all defaults.
[display]
show_streamer_tag = true
show_party_size = true
highlight_enemy_parties = true
short_ranks = false
show_level = true
show_kd = true
show_hs = true
show_wr = true
show_rr_delta = true
[weapon]
preferred = "Vandal"
[features]
discord_rpc = false
gui = false
You can also edit all display toggles live from within the TUI by pressing
[c] to open the config editor.
Project layout
ValoTracker/
├── crates/
│ ├── ValoTracker-core/ # Engine (async Rust, no UI code)
│ ├── ValoTracker-tui/ # ratatui terminal frontend
│ ├── ValoTracker-gui/ # egui desktop GUI (--features gui)
│ └── ValoTracker-py/ # PyO3 Python bindings → PyPI
└── python/ # Pure-Python package wrapping ValoTracker-py
└── ValoTracker/
Contributing
See CONTRIBUTING.md.
PRs welcome. Please run before submitting:
cargo fmt --all
cargo clippy --workspace -- -D warnings
cargo test --workspace
Licens
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file valotracker-1.0.1.tar.gz.
File metadata
- Download URL: valotracker-1.0.1.tar.gz
- Upload date:
- Size: 17.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d3337628e084543982baa8e5b711dbd230be567a93526876c3228e79b439533
|
|
| MD5 |
ceec61de20e5605ddf9f1fd9fa1a6843
|
|
| BLAKE2b-256 |
85fe685ebf37d39c3b98bdc104186ad8265a513012fe39a51c2173167c4e7fcc
|
File details
Details for the file valotracker-1.0.1-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: valotracker-1.0.1-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 3.5 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1bbda6d86ef13f8afa7fa159b5390a569af05788ad394b0ffbc43a7a61a9c8a4
|
|
| MD5 |
aaa9d5f9d52695a14b9d630ddafe806a
|
|
| BLAKE2b-256 |
5759eaba43b102b752ed6d95ea2001ec16c6a746d2cf7e1ddcd8d003cf61951a
|