use fluffer::{App, Client}; async fn index(c: Client) -> String { if let Some(titan) = c.titan { return format!( "Size: {}\nMime: {}\nContent: {}\nToken: {}", titan.size, titan.mime, std::str::from_utf8(&titan.content).unwrap_or("[not utf8]"), titan.token.unwrap_or(String::from("[no token]")), ); } format!( "Hello, I'm expecting a text/plain gemini request.\n=> titan://{} Click me", c.url.domain().unwrap_or("") ) } #[tokio::main] async fn main() { App::default() .titan("/", index, 20_000_000) // < limits content size to 20mb .run() .await .unwrap() }