Files
soundsonic/src/main.rs
vaibhav fcaf70b717 Add user management routes
Integrate the new user management routes into the main application
router. This commit also includes refactoring of the OpenSubsonic
response types to better accommodate error responses and introduces a
new struct for handling multiple extensions.
2026-02-14 03:36:11 +05:30

29 lines
811 B
Rust

mod db;
mod routes;
mod schema;
mod state;
mod types;
use std::env;
use axum::Router;
use dotenvy::dotenv;
use crate::routes::system_router::system_routers;
use crate::routes::user_management_router::user_management_routs;
use crate::state::AppState;
#[tokio::main]
async fn main() {
dotenv().ok();
let database_url = env::var("DATABASE_URL").expect("DATABASE_URL must be set");
let state = AppState::new(&database_url)
.unwrap_or_else(|_| panic!("Error creating pool for {}", database_url));
tracing_subscriber::fmt::init();
let app = Router::new()
.nest("/rest", system_routers().merge(user_management_routs()))
.with_state(state);
let listener = tokio::net::TcpListener::bind("0.0.0.0:3311").await.unwrap();
let _ = axum::serve(listener, app).await;
}