use core.env use db.postgres.Pool use web.http.{App, Response} struct AppState: pool: Pool async fn health(state: AppState) -> Response: let version = env.get("APP_VERSION").or("dev") let row = await state.pool.query_one( "select now() as now" )? Response.json({ "status": "ok", "version": version, "database_time": row["now"] }) async fn main() -> Result: let database_url = env.require("DATABASE_URL")? let port = env.get("PORT").or("8080").to_int()? let pool = Pool.connect(database_url, max: 16)? let app = App.new() .state(AppState { pool: pool }) .get("/health", health) await app.listen("0.0.0.0", port)?