use crate::{api_routers::api_v0_router, app_state::GlobalAppState};
use axum::Router;
use std::net::SocketAddr;
pub async fn serve(port: u16) {
let router = Router::new()
.nest("/api/v0", api_v0_router())
.with_state(GlobalAppState::new());
let addr = SocketAddr::from(([0, 0, 0, 0], port));
let listener = tokio::net::TcpListener::bind(addr).await.unwrap();
println!("Listening on {}", listener.local_addr().unwrap());
axum::serve(listener, router.into_make_service())
.await
.unwrap();
println!("Exiting!");
}