use axum::routing::get;
use axum::Router;
use larust_core::Application;
async fn ping() -> String {
format!("pong-pid-{}", std::process::id())
}
fn config() -> serde_json::Value {
let mut value = serde_json::json!({});
if let Ok(port) = std::env::var("APP_PORT").unwrap_or_default().parse::<u16>() {
value["app_port"] = serde_json::json!(port);
}
if let Ok(name) = std::env::var("APP_NAME") {
value["app_name"] = serde_json::json!(name);
}
value
}
#[tokio::main]
async fn main() -> Result<(), larust_core::AppError> {
let app = Application::new(config)?;
let router = Router::new().route("/ping", get(ping));
app.router(router).serve().await
}