- Introduction
- How It Works
- I Want to Include My Library!
- My Library's Information is Wrong/Outdated
- Troubleshooting
- Future Work
This repository is the home of the configuration files that power the !libs
command for BottyMcBotFace on the Riot Games API Developer Community (https://discord.gg/riotapi)
The aim of this repository is to provide a semi-automated, centralized way for 3rd Party Library Creators to manage the exposure of their libraries to other 3rd Party Developers.
The libraries
directory contains language-specific subdirectories. Within these sub-directories are JSON files that contain library configurations.
The filename is the name of the repository, lowercased and with all non-alphanumeric characters removed.. If the filename already exists (aka there's another library with the same name), simply add a number to the end of your filename (e.g. lolfakejavalib1.json
).
For a Java library called LoL-Fake-Java-Lib
, it's configuration would live at libraries/java/lolfakejavalib.json
Each JSON file should consist of a single RepoObject
JSON object with the following properties:
owner
[string] - The GitHub account that owns the repositoryrepo
[string] - The name of the repositorydescription
[string] (Optional) - A description of the library. If omitted, the repository description will be used insteadlanguage
[string] - The programming language of the librarylinks
[array] - An array ofRepoLink
objectsmetadata
[object] - An object containing metadata on the library.tags
[array] - An array of strings indicating which features are supported by the library. This array can contain any tags, but only the following are currently used:v4
- Include if the library supportsv4
of the Riot Games API. Note that BottyMcBotFace will only show a library that has thev4
tag.rate-limiting
- Include if the library natively handles rate limiting headers from the Riot Games API
name
[string] - The display name of the linkurl
[string] - The URL of the link
lolfakejavalib.json
{
"owner": "WxWatch",
"repo": "LoL-Fake-Java-Lib",
"description": "This is a fake Java library for the Riot Games API",
"language": "Java",
"links": [
{
"name": "Documentation",
"url": "https://github.com/WxWatch"
}
],
"metadata": {
"version": "1.2.0"
},
"tags": [
"v4",
"rate-limiting"
]
}
Awesome! Simply create a Pull Request that adds a file with your library's configuration to the appropriate folder (if your language's folder isn't there, feel free to create it!). Once we verify that everything is correct, we'll merge it in and you're all set!
It's simple to fix! Simply create a Pull Request that updates the configuration file for your library. Once we verify that everything is correct, we'll merge it in and you're all set!
For any specific issues / feature requests, you can create a Github Issue or reach out to WxWatch on the Riot API Community Discord
With the upcoming deprecation ofDone!pre-v3
APIs, a way for libraries to be marked assupporting v3
.- Remove the
language
property and have the updater rely on the directory name to know the language. - A more robust way to show what APIs a library supports
- A way for libraries to show any additional features it may have (rate limiter, etc.)
- Support for libraries not hosted on Github
Riot API Libraries Repository 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.