blob: 20fedf61ce31360daf71db6a464c706cba56059d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
use std::sync::{Arc, Mutex};
use sqlx::{Connection, SqliteConnection};
mod config;
mod ui;
struct AppState {
conf : config::Config,
db : Mutex<SqliteConnection>
}
type SharedState = Arc<Mutex<AppState>>;
#[tokio::main]
async fn main() -> std::io::Result<()> {
// simple_logger::
let mut conn = SqliteConnection::connect("sqlite:cats-radio-node.db").await.unwrap();
sqlx::migrate!()
.run(&mut conn)
.await
.expect("could not run SQLx migrations");
let conf = config::Config::load().expect("Could not load config");
let shared_state = Arc::new(Mutex::new(AppState {
conf,
db: Mutex::new(conn)
}));
ui::serve(3000, shared_state).await;
Ok(())
}
|