Windmark

crates.io docs.rs github.com

Windmark is an elegant and highly performant, async Gemini server framework.

Usage

Add Windmark as a dependency

```toml

Cargo.toml

[dependencies] windmark = "0.1.2"

If you would like to use the built-in logger (recommended)

windmark = { version = "0.1.2", features = ["logger"] }

```

Implement a Windmark server

```rust // src/main.rs

use windmark::Response;

[windmark::main]

fn main() -> Result<(), Box> { windmark::Router::new() .setprivatekeyfile("windmarkprivate.pem") .setcertificatechainfile("windmarkpair.pem") .mount("/", || Response::Success("Hello, World!".into())) .seterrorhandler(|| { Response::PermanentFailure("This route does not exist!".into()) }) .run() .await } ```

Examples

Examples can be found within the examples/ directory.

License

This project is licensed with the GNU General Public License v3.0.