Home

Awesome

Kernel - A plug & play Riot API proxy server

Kernel is built on top of orianna, a Riot API wrapper and framework for working with API data. The API Kernel provides mirrors the Riot API, and allows users to proxy their API calls through Kernel to avoid "leaking" their Riot API key to end users.

Kernel is built using the Thorntail application server with JAX-RS and RestEasy.

Kernel is licensed under the MIT License.

Features

Kernel also includes the following built-in features:

API Differences from Riot API

Kernel is intended to mirror the Riot API exactly. The Riot API, however, is distributed accross regional platform domains to split computation load and localize content distribution (e.g. na1.api.riotgames.com or euw1.api.riotgames.com). Kernel supports serving all platforms from a single server instance using the platform query parameter, which is available for every API endpoint in Kernel. All Riot API platforms are supported by this feature. A default platform can be configured to direct requests without a platform query parameter to that platform.

Example: the Riot API call https://na1.api.riotgames.com/lol/summoner/v4/summoners/by-name/FatalElement becomes http://localhost/lol/summoner/v4/summoners/by-name/FatalElement?platform=NA1 for Kernel.

How to get it

Kernel can be obtained and installed either through Docker or by building the application locally using Maven.

Docker

Kernel docker images are available on Docker Hub. If you're unfamiliar with docker, here's how to run them on your local machine:

If you want to change some configuration settings in Kernel, you can edit the kernel-config.json file from the configuration you chose, then add a volume entry to the docker-compose.yml file to load your config into the container.

Example: original compose file | compose file with custom kernel-config.json

Building Locally with Maven

Questions & Contributions

Feel free to send pull requests or to contact us via GitHub or Discord.

Disclaimer

Kernel isn't endorsed by Riot Games and doesn't reflect the views or opinions of Riot Games or anyone officially involved in producing or managing League of Legends. League of Legends and Riot Games are trademarks or registered trademarks of Riot Games, Inc. League of Legends © Riot Games, Inc.