You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

17 lines
508 B

use axum::Router;
use std::sync::Arc;
use tower_http::{cors::CorsLayer, trace::TraceLayer};
use crate::api;
use crate::dependencies::AppDependencies;
use crate::state::AppState;
pub async fn create_router() -> anyhow::Result<Router> {
let dependencies = AppDependencies::new("sqlite:app.db", None).await?;
let state = Arc::new(AppState::new(dependencies).await);
Ok(api::routes()
.with_state(state)
.layer(TraceLayer::new_for_http())
.layer(CorsLayer::permissive()))
}