diff options
| author | Fuwn <[email protected]> | 2021-05-12 23:48:04 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2021-05-12 23:48:04 -0700 |
| commit | c7a282bd3f96c0e3cc0807aabd5b7104df6effc9 (patch) | |
| tree | 64818c0add5762ba1ae83c8d9e7aa7bdb605f6f2 /src/main.rs | |
| download | lime-c7a282bd3f96c0e3cc0807aabd5b7104df6effc9.tar.xz lime-c7a282bd3f96c0e3cc0807aabd5b7104df6effc9.zip | |
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..aeb4906 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,44 @@ +// Copyright (C) 2021-2021 Fuwn +// SPDX-License-Identifier: GPL-3.0-only + +#[macro_use] +extern crate actix_web; +#[macro_use] +extern crate serde_derive; +#[macro_use] +extern crate diesel; +#[macro_use] +extern crate simple_error; + +pub mod routes; +pub mod structure; + +pub mod db; + +use actix_web::web; +use routes::*; + +#[actix_web::main] +async fn main() -> std::io::Result<()> { + dotenv::dotenv().ok(); + + actix_web::HttpServer::new(|| { + actix_web::App::new() + .wrap(actix_cors::Cors::default().allow_any_origin()) + .service(ui::index) + .service(ui::handle) + .service(ui::statistics) + .service( + web::scope("/api/v1") + .service(api::create) + .service(api::statistics) + .service(api::index), + ) + }) + .bind(format!( + "0.0.0.0:{}", + std::env::var("PORT").expect("no port was provided.") + ))? + .run() + .await +} |