use ::app::get_router;
use std::env;
use std::path::Path;

#[tokio::main]
async fn main() {
    let manifest_dir = env::var("CARGO_MANIFEST_DIR").unwrap();
    let assets_path = Path::new(&manifest_dir).join("assets");
    let router = get_router(assets_path.as_path());

    // TODO: select port based on available port (or ask in CLI)
    let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await.unwrap();
    axum::serve(listener, router).await.unwrap();
}
