Skip to content
/ gw2lib Public

Extensible Gw2 API wrapper library for Rust

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

greaka/gw2lib

Repository files navigation

GW2 API library Build Status Latest Version Latest Version

gw2lib is an API wrapper for the game Guild Wars 2


Aside from bugs or feature requests that might arise, this crate is considered done! Mapping out structs is the only work left to do and will be crowd-sourced. A lack of activity does not mean that it's unmaintained!

New releases of the model will be made whenever a new endpoint is added or an endpoint needs fixing. You can update the model in your project by simply running cargo update.

gw2lib in action

blocking

Cargo.toml
[dependencies.gw2lib]
version = "1.0.0"
features = ["blocking"]
use gw2lib::{Client, Requester};
use gw2lib::model::{items::Item, misc::build::Build};

fn main() {
    let client = Client::default();

    let _all_items: Vec<Item> = client.all().unwrap();
    let _current_build: Build = client.get().unwrap();
}

async

Cargo.toml
[dependencies.gw2lib]
version = "1.0.0"
use gw2lib::{Client, Requester};
use gw2lib::model::{items::Item, misc::build::Build};

#[tokio::main]
async fn main() {
    let client = Client::default();

    let _all_items: Vec<Item> = client.all().await.unwrap();
    let _current_build: Build = client.get().await.unwrap();
}

Mapped endpoints

You can find the list of already mapped endpoints here

Please contribute any endpoints that you define additionally!

Contributing

Missing endpoints are easy to add! Here is an example

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in gw2lib by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.