[![License: MIT](https://img.shields.io/badge/License-MIT-blue?style=flat-square)](LICENSE) [![Crates.io](https://img.shields.io/crates/v/tasvideos-api-rs?style=flat-square)](https://crates.io/crates/tasvideos-api-rs) [![Documentation](https://img.shields.io/docsrs/tasvideos-api-rs?style=flat-square)](https://docs.rs/tasvideos-api-rs) ### Description Rust API wrapper crate for the redesigned TASVideos website ([Swagger Docs](https://tasvideos.org/api/)). Implementation note: Different endpoints provide a various set of optional filters. For now, this is handled by an enum containing a variant for every filter type. This design is a little clunky to use, but it works. If you provide a filter that's not supported by the endpoint, it will be quietly ignored. ### Supported Endpoints ``` GET /api/v1/Games/{id} GET /api/v1/Games GET /api/v1/Publications/{id} GET /api/v1/Publications GET /api/v1/Submissions/{id} GET /api/v1/Submissions GET /api/v1/Systems/{id} GET /api/v1/Systems ``` Movie downloads are also supported for publications, submissions, and userfiles. ### Building If you wish to build from source, for your own system, Rust is integrated with the `cargo` build system. To install Rust and `cargo`, just follow [these instructions](https://doc.rust-lang.org/cargo/getting-started/installation.html). Once installed, while in the project directory, run `cargo build --release` to build.