achubb_website/src/lib.rs

31 lines
1.1 KiB
Rust
Raw Normal View History

use anyhow::Context;
2024-04-28 14:20:23 -04:00
use surrealdb::{engine::remote::ws::Client, Surreal};
use tracing::info;
use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt};
mod html;
2024-04-28 14:20:23 -04:00
mod database;
pub async fn run() -> anyhow::Result<()> {
2024-04-28 14:20:23 -04:00
let connection: Surreal<Client> = database::connect().await?;
let mut articles: Vec<database::ArticleMetadata> = database::get_all_articles(&connection).await?;
database::get_article(&connection, articles.pop().unwrap().id.id.to_string()).await?;
tracing_subscriber::registry()
.with(
tracing_subscriber::EnvFilter::try_from_default_env()
.unwrap_or_else(|_| "achubb_backend".into()),
)
.with(tracing_subscriber::fmt::layer())
.init();
info!("initializing router...");
2024-03-24 14:09:21 -04:00
let port = 21212_u16;
let addr = std::net::SocketAddr::from(([0, 0, 0, 0], port));
2024-03-24 10:45:16 -04:00
let router = html::root::get_router();
info!("router initialized, now listening on port {}", port);
axum::Server::bind(&addr)
.serve(router.into_make_service())
.await
.context("error while starting server")?;
Ok(())
}