{"id":19831253,"url":"https://github.com/torlenor/alolstats","last_synced_at":"2026-06-06T22:31:49.500Z","repository":{"id":57519131,"uuid":"245524344","full_name":"torlenor/alolstats","owner":"torlenor","description":"ALoLstats, a League of Legends Statistics aggregation and calculation server","archived":false,"fork":false,"pushed_at":"2020-07-05T07:33:18.000Z","size":1935,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-11T10:16:12.374Z","etag":null,"topics":["go","golang","leageuoflegends","league-of-legends","statistics"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/torlenor.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-03-06T22:01:32.000Z","updated_at":"2020-07-05T07:33:21.000Z","dependencies_parsed_at":"2022-09-06T03:42:15.939Z","dependency_job_id":null,"html_url":"https://github.com/torlenor/alolstats","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/torlenor%2Falolstats","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/torlenor%2Falolstats/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/torlenor%2Falolstats/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/torlenor%2Falolstats/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/torlenor","download_url":"https://codeload.github.com/torlenor/alolstats/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241191417,"owners_count":19925247,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["go","golang","leageuoflegends","league-of-legends","statistics"],"created_at":"2024-11-12T11:29:42.200Z","updated_at":"2026-06-06T22:31:49.458Z","avatar_url":"https://github.com/torlenor.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ALoLStats\n\n[![Build status](https://git.abyle.org/hps/alolstats/badges/master/pipeline.svg)](https://git.abyle.org/hps/alolstats/commits/master)\n[![Coverage Status](https://git.abyle.org/hps/alolstats/badges/master/coverage.svg)](https://git.abyle.org/hps/alolstats/commits/master)\n[![Docker](https://img.shields.io/docker/pulls/hpsch/alolstats.svg)](https://hub.docker.com/r/hpsch/alolstats/)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](/LICENSE)\n\n## Short Description\n\nALoLstats, a League of Legends Statistics aggregation and calculation server\n\n## Abstract\n\nFor players which want to be competitive or which are still learning it is essential to study various game metrics. Usually players use one of the various\nwebsites which exist solely for the purpose to present statistics about League of Legends and which give you informations like the lanes a\ncertain champion should be played in or its win/loss and ban rates.\n\nMost of those websites do not describe their methods how those informations were obtained, how the statistics is calculated and on which dataset\nthe calculations are based on. In every scientific setting this would be a strict no-go and if bad underlying data is used, or wrong assumptions on the data\nare made, this can lead to misinterpretation of the results which may lead to wrong decision making.\n\nIn this project we aim to improve on that by implementing a completely open source (MIT license) solution to the calculation and preparation of statistics for\nvarious aspects of the game.\n\nCurrently the focus of development lies in the calculation of Champion statistics, like lane/role, average KDA, win/loss ratios, ban ratios and various other aspects\nrelated to Champions. In the near future Summoner data shall also be considered. The decisions on which features are tackled next are based on suggestions and requests by friends and colleagues and personal experiences while playing League of Legends.\n\nThe implementation is done in Go with the possibility to use R for complex statistical calculations. The data storage is interchangeable and currently\na MongoDB backend is supported.\n\nThe Riot API client is implemented from scratch for this project, including region support and rate limit handling, and is currently based on V4 of the Riot API.\n\nIn combination with this backend a frontend called [ALoLstats-web](https://git.abyle.org/hps/alolstats-web) is also beeing developed.\n\n## How to run it\n\nProbably the easiest way to try out ALoLstats is using Docker. Currently no official images are provided in a public registry, but it can be easily built using\n\n```\nmake build-container-gitcommit\n```\n\nand then start it using\n\n```\ndocker run --name ALoLstats -v /path/to/config/file.toml:/app/config/config.toml:ro hpsch/alolstats:latest\n```\n\nwhere _/path/to/config/file.toml_ has to be replaced with the path to your config file.\n\nAn example is provided in the cfg/ directory and it is enough to insert your API key to use this config.\n\nTo expose the http port for the REST API use\n```\n-p 8000:8000\n```\nwhere 8000 should be exchanged with the port set in the config file.\n\n## API Reference (usually out of date and highly in flux)\n\nThe following endpoints are currently available. A detailed description will be provided at a later point when the API becomes more stable.\n\n### Match related endpoints\n\n* **/v1/match?id=matchID**: Returns informations of the match with id=matchID (e.g., 2585564744)\n\n### Champion related endpoints\n\n* **/v1/champions**: Returns a list of all currently available champions\n* **/v1/champion-rotations**: Returns a list of the current free champion rotation\n\n### Summoner related endpoints\n\n* **/v1/summoner/byname?name=summonerName**: Returns information about a summoner specified by name=summonerName\n* **/v1/summoner/bysummonerid?id=summonerID**: Returns information about a summoner specified by name=summonerID\n* **/v1/summoner/byaccountid?id=accountID**: Returns information about a summoner specified by name=accountID\n\n### Statistics related endpoints\n\n* **/v1/stats/overview**: Temporary page which lists all available plots related to Champion statistics\n* **/v1/stats/champion/byid?id=championId\u0026gameversion=exactGameVersion**: Returns stats for the Champion with id=championId and the specified game version (e.g., 110 and 8.24)\n* **/v1/stats/champion/byname?name=championName\u0026gameversion=exactGameVersion**: Returns stats for the Champion with name=championName and the specified game version (e.g., Sivir and 8.24)\n\n### ALoLStats related endpoints\n\n* **/v1/storage/summary**: Returns information of the stored data in the storage or its backend\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftorlenor%2Falolstats","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftorlenor%2Falolstats","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftorlenor%2Falolstats/lists"}