rust library to interact with the openmensa api
This library provides a way to build request to the openmensa api and deserialize into rust structures.
Provided are requests for Canteen
, Meal
and Day
.
```rust use openmensa_rs::request::CanteenRequest;
async fn main() { println!("List of all canteens: "); let list = CanteenRequest::new().build().await; println!("{:?}", list); } ```
```rust use openmensars::{reqcanteens, request::MealRequest};
async fn main() { let list = req_canteens().await.unwrap(); // Print out the meals offered in the first canteen println!("Meals in the {} canteen on the {}", list[0].name(), chrono::Utc::today()); let meals = MealRequest::new(list[0].id(), chrono::Utc::today()) .build() .await .unwrap(); println!("{:?}", meals); } ```
If you want to get all information and specify no further constraints for your requests, you can use the provided shorthands req_canteens
, req_days
and req_meals
.
```rust use openmensars::reqcanteens;
async fn main() { let list = req_canteens().await.unwrap(); println!("First canteens has id {} and is called {}", list[0].id(), list[0].name()); } ```
All you have to do is add in your Cargo.toml
under dependencies
toml
[dependencies]
openmensa-rs = "^0"
If you have any troubles using this library or you find any problems feel free to open an issue. Explaining your problem and if possible provide a short code snippet.
Johannes Wünsche
:octocat:
@jwuensche
:elephant:@fredowald@mastodon.social
:bird:@Fredowald
This README template is based on group works with fin-ger.
Give a :star: if this project helped you!