
A terminal-based League of Legends stats tracker built with Python and Textual, styled after btop-style system dashboards. Tracks rank, recent form, champion mastery, match history, and top champions across a scrollable three-panel layout, with full per-match breakdowns — runes, summoner spells, items, objectives, bans, and a gold/XP/damage timeline chart. Also supports searching any player, bookmarking favorites, tracking multiple accounts, and side-by-side stat comparison.
Python 3.10 or higher. A free Riot Games Developer API key, generated from the Riot Developer Portal. Internet connection for live data pulls. Works on Windows, macOS, and Linux — on Windows specifically, use Windows Terminal rather than legacy cmd.exe or the old PowerShell console host, which don't handle keyboard input correctly for full-screen terminal apps.
Install with pipx install rift-tui — no cloning, no virtual environment to manage yourself. Generate a free personal API key from the Riot Developer Portal; you'll be prompted to paste it in on first launch, or add it any time afterward with the K key. No .env editing or region variables to configure by hand — your account's region is chosen with the arrow keys during setup.
On first launch, rift-tui walks you through a short setup: paste your Riot API key, then enter your Riot ID (name#tag) and pick your region with the arrow keys. Either step can be skipped and completed later. Once set up, it fetches your summoner data and populates the three-panel layout; Recent Form, Top Roles, and Champion Mastery on the left; Ranked Overview, Last 10 Matches, and Top Champions in the center; Riot ID, rank, queue filter, and controls on the right. Data refreshes automatically every 5 minutes by default, adjustable in-app.
No config file to edit by hand, everything is managed in-app. Tracked accounts, bookmarks, refresh interval, and your API key are all set via keybinds (A, B, I, K) and saved automatically to your OS's proper per-user data folder, not inside the installed package itself. This means settings persist across updates and reinstalls.
"Rate limited by Riot API" — personal dev keys are capped at 20 requests/second and 100 requests/2 minutes; wait a moment and retry. "Invalid or expired Riot API key", dev keys expire every 24 hours, press K in-app to paste a fresh one, no restart needed. "Player not found" — double check the Riot ID is exactly name#tag, and try a different region with the arrow keys, since Riot IDs are locked to whichever server they actually play on. Keys not responding — on Windows, make sure you're running in Windows Terminal rather than legacy cmd.exe or the old PowerShell console host.