cryptgeon/backend/src/main.rs

36 lines
826 B
Rust
Raw Normal View History

use actix_web::{
middleware::{self, Logger},
web, App, HttpServer,
};
2021-12-21 00:15:04 +01:00
use dotenv::dotenv;
2021-05-01 12:39:40 +02:00
#[macro_use]
extern crate lazy_static;
2022-03-01 00:53:47 +01:00
mod api;
2021-05-02 12:32:03 +02:00
mod client;
mod config;
2021-05-01 12:39:40 +02:00
mod note;
2021-12-20 17:42:16 +01:00
mod size;
mod status;
2021-05-02 12:32:03 +02:00
mod store;
2021-05-01 12:39:40 +02:00
#[actix_web::main]
async fn main() -> std::io::Result<()> {
2021-12-21 00:15:04 +01:00
dotenv().ok();
env_logger::init_from_env(env_logger::Env::new().default_filter_or("warning"));
2021-12-20 17:42:16 +01:00
return HttpServer::new(|| {
2021-05-01 12:39:40 +02:00
App::new()
.wrap(Logger::new("%a \"%r\" %s %b %T"))
2021-05-01 12:39:40 +02:00
.wrap(middleware::Compress::default())
.wrap(middleware::DefaultHeaders::default())
2021-12-20 17:42:16 +01:00
.configure(size::init)
2022-03-01 00:53:47 +01:00
.configure(api::init)
2021-05-02 12:32:03 +02:00
.configure(client::init)
2022-03-05 12:47:11 +01:00
.default_service(web::to(client::index))
2021-05-01 12:39:40 +02:00
})
.bind(config::LISTEN_ADDR.to_string())?
2021-05-01 12:39:40 +02:00
.run()
2021-12-20 17:42:16 +01:00
.await;
2021-05-01 12:39:40 +02:00
}