Poke-speare

CI Coverage Status docker unsafe forbidden API docs

REST API that, given a Pokémon name, returns its description in Shakespeare's style.

Pokemon description is taken from PokéAPI and it is converted by using Shakespeare translator.

Usage

You can use poke-speare both as a web server and as a rust library

Web server

```sh $ curl http://localhost:5000/pokemon/charizard

{ "name": "charizard", "description": "Charizard flies 'round the sky in search of powerful opponents." }

```

Library

rust let shakespeare_api_token = None; let pokemon_descr = poke_speare::get_description("charizard", shakespeare_api_token).await; println!("description: {}", pokemon_descr);

Settings

You can set environment variable in order to change settings. For example: RUST_LOG=debug POKE_SPEARE_PORT=5001 ./poke-speare

In the following there are all environment variables with their default values: - RUST_LOG: error. Other possible values: info - POKE_SPEARE_HOST: "127.0.0.1" - POKE_SPEARE_PORT: 5000 - POKE_SPEARE_SHAKESPEARE_TOKEN: "". Shakespeare translator has a rate limit of 60 API calls a day with distribution of 5 calls an hour. Set the environment variable POKE_SPEARE_SHAKESPEARE_TOKEN if you have a FunTranslations Api Secret.

Install

Cargo

Docker

docker pull marcoieni/poke-speare

RUN

Cargo

Make sure that ~/.cargo/bin is in your PATH.

$ poke-speare

Docker

docker run -p 5000:5000 marcoieni/poke-speare

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Credits