diff --git a/backend/object.rs b/backend/object.rs deleted file mode 100644 index 239ee13..0000000 --- a/backend/object.rs +++ /dev/null @@ -1,14 +0,0 @@ -struct Laser { - color : array, -} - -struct Mirror { - color : array, - x : int, - y : int, -} - -struct Spawn { - x : int, - y : int, -} \ No newline at end of file diff --git a/backend/src/main.rs b/backend/src/main.rs index 603cd0e..7158eb2 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -1,9 +1,12 @@ -use axum::{routing::get, Router}; +use axum::{Router, response::Html, routing::get}; use std::net::SocketAddr; +use std::path::Path; +use tokio::fs::File; +use tokio::io::{self, AsyncReadExt}; #[tokio::main] async fn main() { - let app = Router::new().route("/", get(|| async { "Hello, world!" })); + let app = Router::new().route("/", get(handler)); let addr = SocketAddr::from(([127, 0, 0, 1], 3000)); println!("listening on {}", addr); @@ -12,3 +15,17 @@ async fn main() { .await .unwrap(); } + +async fn handler() -> Html { + let html_content = read_html_from_file("../web/templates/view/index.html") + .await + .unwrap_or_else(|_| "

Error loading HTML file

".to_string()); + Html(html_content) +} + +async fn read_html_from_file>(path: P) -> io::Result { + let mut file = File::open(path).await?; + let mut contents = String::new(); + file.read_to_string(&mut contents).await?; + Ok(contents) +}