From 04e19765aca471fd85199714699aaf827d04608d Mon Sep 17 00:00:00 2001 From: WriterV2 Date: Sun, 27 Oct 2024 13:58:51 +0100 Subject: Refactor: Organize modules initially --- src/handlers/frontend.rs | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 src/handlers/frontend.rs (limited to 'src/handlers/frontend.rs') diff --git a/src/handlers/frontend.rs b/src/handlers/frontend.rs new file mode 100644 index 0000000..f4b7c6c --- /dev/null +++ b/src/handlers/frontend.rs @@ -0,0 +1,37 @@ +use axum::response::IntoResponse; +use maud::{html, Markup, DOCTYPE}; + +use crate::error::AppError; + +pub async fn home() -> Result { + Ok(html!({ + (head("Home")) + body class="bg-[#eae3d2] text-[#333] dark:bg-[#333] dark:text-[#eae3d2] font-mono text-base tracking-wide" { + (header_with_navbar()) + } + })) +} + +fn header_with_navbar() -> Markup { + html!({ + header { + navbar class="p-3 text-sm flex flex-row flex-wrap content-center justify-around decoration-purple-500 shadow" { + a class="hover:underline" href="/" { "Home" } + a class="hover:underline" href="/" { "Stories" } + a class="hover:underline" href="/" { "Tools" } + a class="hover:underline" href="/" { "Games" } + } + } + }) +} + +fn head(page_title: &str) -> Markup { + html! { + head { + (DOCTYPE) + meta charset="utf-8"; + link rel="stylesheet" type="text/css" href="/static/styles.css"; + title { (page_title) } + } + } +} -- cgit v1.2.3