6 releases
0.1.5 | Dec 29, 2024 |
---|---|
0.1.4 | Feb 6, 2024 |
0.1.3 | Oct 6, 2023 |
0.1.2 | Jul 15, 2023 |
0.1.1 | Jun 23, 2023 |
#4 in #riot-games
22 downloads per month
Used in 2 crates
31KB
506 lines
Irelia
Irelia is a wrapper for the local https APIs provided by riot games for LoL
[dependencies]
irelia = "0.9"
Cargo Features
This crate is designed with modularity in mind, and as such API support has been split into different cargo features.
By default, everything but the replay feature is enabled
["full"]
- enables support for all APIs avaiable in the client by default (enabled by default)["ws"]
- enables support for the LCU websocket["in_game"]
- enables support for the native in game API["replay"]
- enables the replay API interface (disabled by default)
Making a request to the LCU
Making a request to the LCU with irelia is simple
use irelia::{Error, RequestClient, rest::LcuClient};
use serde_json::Value;
#[tokio::main]
async fn main() {
let lcu_client = irelia::rest::LcuClient::connect().unwrap();
let current_summoner: Value = lcu_client
.get("/lol-summoner/v1/current-summoner")
.await
.unwrap();
println!("{current_summoner}");
}
Up-to-date examples can always be found here
lib.rs
:
This decoder is largely taking from this article. https://dev.to/tiemen/implementing-base64-from-scratch-in-rust-kb1 It goes into detail about the entire thing, and why it works the way it does, and I highly recommend reading it Very big thanks to Tiemen for writing it!
The usage of u64s as byte arrays is taken from the base64 crate, which is under the MIT license