tasvideos-api-rs 0.1.0

Blocking API wrapper for TASVideos.org.
Documentation
[![License: BSD 2-Clause](https://img.shields.io/badge/License-BSD%202--Clause-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.

### User Agent

It's highly recommended that you set a user-agent. A default user-agent will _not_ be provided in any requests unless you set one:
```Rust
unsafe { tasvideos_api_rs::USER_AGENT = "John Smith (johnsmith@gmail.com)"; }
```

### 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.