Skip to content

lol-cli: A powerful, terminal-based tool for viewing League of Legends stats. Dive deep into match histories with detailed breakdowns of KDA, gold generation, items, and runes. Features a live game viewer, champion mastery lookup, and a full match timeline. Built with Node.js, it brings all the essential stats right to your command line.

License

Notifications You must be signed in to change notification settings

AntApper/lol-cli

fontbolt

A terminal-based application to fetch and display a player's League of Legends statistics, built with Node.js and the Riot Games API.

Features

  • Interactive TUI: A full-featured, mouse and keyboard-driven Text-based User Interface.
  • Live Game Viewer: See live game data, including champion, role, game time, and more.
  • Enhanced Summary: View most played champions and total playtime from the last 10 games.
  • Detailed Match History: Get a summary of the last 10 games and expand for in-depth details.
  • In-Depth Analysis: See performance stats, KDA graphs, gold generation, items, runes, and more.
  • Champion Mastery: View your Champion Mastery profile for any champion played.
  • Match Timeline: Get a full-screen, scrollable log of all major events in a match.
  • Smart Game Status: Automatically detects and labels "Remake" and "Arena" games.

Screenshots

Description Screenshot
Search Screen Screenshot 2025-10-12 at 9 40 18 PM
Results Screen Results Screen
Expanded Match Expanded Match
Mastery Screen MasteryScreen
Timeline Screen Match Timeline
Live Game Live Game

Installation

  1. Clone the Repository

    git clone https://github.com/AntApper/lol-cli.git
    cd lol-cli
  2. Install Dependencies

    npm install

Configuration

To fetch data from the Riot Games API, you need to provide a valid API key.

  1. Create a .env File Create a new file named .env in the root of the project directory.

    touch .env
  2. Add Your API Key Open the .env file and add your Riot API key:

    RIOT_API_key="your_api_key_here"
    

    Get a free development API key from the Riot Developer Portal.

Note for binary users: If you are using the pre-built binary, you need to place the .env file in the same directory as the executable.

Usage

Development

To run the application in a development environment, use:

npm start

Building the Application

To create a standalone executable, run:

npm run build

This will generate a binary file (e.g., lol-cli) in the project's root directory.

Running the Executable

./lol-cli

You can also pass arguments directly:

./lol-cli -r <region> -i '<gameName#tagLine>'

Hotkeys

  • Search Screen:
    • Enter: Move between fields and submit.
    • Arrow Keys: Navigate lists.
    • Esc / q / Ctrl+C: Quit.
  • Results Screen:
    • Enter: Expand/collapse a match.
    • m: View Champion Mastery for the selected match.
    • t: View Match Timeline for the selected match (when expanded).
    • b: Go back to the search screen.
    • q: Quit.
  • Mastery Screen:
    • b: Go back to the results screen.
  • Timeline Screen:
    • b: Go back to the results screen.

Contributing

Contributions are welcome!

Please read our Contributing Guidelines to get started. Also, please read our Code of Conduct to understand our community standards.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

lol-cli: A powerful, terminal-based tool for viewing League of Legends stats. Dive deep into match histories with detailed breakdowns of KDA, gold generation, items, and runes. Features a live game viewer, champion mastery lookup, and a full match timeline. Built with Node.js, it brings all the essential stats right to your command line.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published