League Tracker is a Discord app that "tracks" League of Legends players' ranked solo/duo queue matches and provides updates on their performance. The bot is designed to be added to Discord servers where users can follow specific summoners and receive notifications about their recent matches, including rank changes and game statistics.
- 📊 Track multiple League of Legends summoners in one place
- 🔔 Automatically fetch and announce new ranked solo/duo queue matches
- 🏆 Display detailed match information (champion, KDA, damage dealt, and more)
- 📈 Show rank changes and LP gains/losses
- 📜 Maintain a history of tracked matches and summoner statistics
- 🎛️ Simple command interface for managing tracked summoners
- Go (Golang)
- PostgreSQL
- DiscordGo
Before diving in, make sure you have:
- Go 1.22 or later
- PostgreSQL
- A Discord bot token (Create one here)
- A Riot Games API key (Get a development key here)
-
Clone the repository:
git clone https://github.com/tristan-derez/league-tracker.git cd league-tracker
-
Install dependencies:
go mod tidy
-
Set up environment variables:
Create a
.env
file in the root directory based on.env.example
.- Unix-like systems (Linux, macOS):
cp .env.example .env
- Windows PowerShell:
Copy-Item .env.example .env
- Unix-like systems (Linux, macOS):
-
Quick Start with Docker:
docker compose up
💡 If using Docker, you can skip steps 5 & 6.
-
Database Setup: Ensure your PostgreSQL server is running. The bot will create necessary tables on startup.
-
Build and Run:
go build -o league-tracker ./league-tracker
Once your bot is up and running, use these commands in your Discord server:
- Add summoners:
# add one summoner: /add summonerName#tagLine # add multiple summoners: /add summonerName1#tagLine1, summonerName2#tagLine2
- Remove summoners:
# remove one summoner: /remove summonerName#tagLine # remove multiple summoners: /remove summonerName1#tagLine1, summonerName2#tagLine2 # remove every summoners from tracking: /reset
- List tracked summoners:
/list
- Manage update channel:
# Remove current channel from update channel: /unchannel
📌 To invite your bot to a server, check the installation section in Discord Developer Portal > Your App > Installation
We welcome contributions! Feel free to submit a Pull Request.
This project is open-source under the MIT License.
Encountered an issue or have questions? Open an issue on our GitHub repository.