windmark 0.8.0

An elegant and highly performant async Gemini server framework
Documentation
//! `cargo run --example fix_path`

use windmark::{response::Response, router_option::RouterOption};

#[windmark::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
  windmark::router::Router::new()
    .set_private_key_file("windmark_private.pem")
    .set_certificate_file("windmark_public.pem")
    .add_options(&[
      RouterOption::RemoveExtraTrailingSlash,
      RouterOption::AddMissingTrailingSlash,
      RouterOption::AllowCaseInsensitiveLookup,
    ])
    .mount("/close", |_| {
      Response::success("Visit '/close/'; you should be close enough!")
    })
    .run()
    .await
}