From 1f6c5ebddd69759fcf3452e879f5b66666f36ac0 Mon Sep 17 00:00:00 2001 From: RGBCube Date: Fri, 5 Jan 2024 16:04:17 +0300 Subject: [PATCH] Add page::text --- .gitignore | 1 + ...amjuree700.woff2 => BaiJamjureeBold.woff2} | Bin src/page/BaiJamjureeMedium.woff2 | Bin 0 -> 10808 bytes src/page/cube/cube.css | 13 ++---- src/page/mod.rs | 13 +++++- src/page/page.css | 19 +++++++++ src/page/text/mod.rs | 40 ++++++++++++++++++ src/page/text/text.css | 0 src/routes/index/index.css | 4 +- 9 files changed, 78 insertions(+), 12 deletions(-) rename src/page/{BaiJamjuree700.woff2 => BaiJamjureeBold.woff2} (100%) create mode 100644 src/page/BaiJamjureeMedium.woff2 create mode 100644 src/page/page.css create mode 100644 src/page/text/mod.rs create mode 100644 src/page/text/text.css diff --git a/.gitignore b/.gitignore index e10f094..9b76d58 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ !src/errors/not_found/ !src/page/ !src/page/cube/ +!src/page/text/ !src/routes/ !src/routes/index/ diff --git a/src/page/BaiJamjuree700.woff2 b/src/page/BaiJamjureeBold.woff2 similarity index 100% rename from src/page/BaiJamjuree700.woff2 rename to src/page/BaiJamjureeBold.woff2 diff --git a/src/page/BaiJamjureeMedium.woff2 b/src/page/BaiJamjureeMedium.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..dfc55e1e5f6d10f99cff50f4e02f17725b74e327 GIT binary patch literal 10808 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 literal 0 HcmV?d00001 diff --git a/src/page/cube/cube.css b/src/page/cube/cube.css index 6bc620b..0629d17 100644 --- a/src/page/cube/cube.css +++ b/src/page/cube/cube.css @@ -1,9 +1,3 @@ -@font-face { - font-family: "Bai Jamjuree"; - font-weight: 700; - src: url("/assets/BaiJamjuree700.woff2") format("woff2"); -} - body, html { height: 100%; @@ -11,10 +5,7 @@ html { } html { - background-color: #000000; - font-family: "Bai Jamjuree", sans; font-size: 450%; - overscroll-behavior: none; } @@ -31,7 +22,9 @@ html { } a { + /* Black on a white background */ color: #000000; + font-weight: bold; text-decoration-line: none; } @@ -105,4 +98,4 @@ a { .left { transform: rotateY(-89.99999999999999deg) translateZ(2.498em); -} \ No newline at end of file +} diff --git a/src/page/mod.rs b/src/page/mod.rs index 661d01e..8406977 100644 --- a/src/page/mod.rs +++ b/src/page/mod.rs @@ -1,5 +1,6 @@ pub mod cube; mod elements; +pub mod text; use std::sync::LazyLock; @@ -14,12 +15,21 @@ use maud::{ use crate::asset; -static MANIFEST: LazyLock = LazyLock::new(|| { +pub static MANIFEST: LazyLock = LazyLock::new(|| { Manifest::from_str(&embed::string!("../../Cargo.toml")) .with_context(|| "Failed to deserialize Cargo manifest") .unwrap() }); +/// Enum used to incidate which page we are on. +pub enum Page { + Home, + About, + Blog, + Contact, + Other, +} + /// Creates a page with the given head and body. /// /// This is the most low level function for page creation @@ -58,6 +68,7 @@ pub fn create(head: Markup, body: Markup) -> Markup { (property("og:url", url)) link rel="canonical" href=(url); + (asset::Css::Shared("page.css")) (head) } diff --git a/src/page/page.css b/src/page/page.css new file mode 100644 index 0000000..fcc5eb9 --- /dev/null +++ b/src/page/page.css @@ -0,0 +1,19 @@ +@font-face { + font-display: block; + font-family: "BaiJam"; + font-weight: normal; + src: url("/assets/BaiJamjureeMedium.woff2"); +} + +@font-face { + font-display: block; + font-family: "BaiJam"; + font-weight: bold; + src: url("/assets/BaiJamjureeBold.woff2"); +} + +html { + background-color: #000000; + color: #FFFFFF; + font-family: "BaiJam"; +} diff --git a/src/page/text/mod.rs b/src/page/text/mod.rs new file mode 100644 index 0000000..0a2bcd8 --- /dev/null +++ b/src/page/text/mod.rs @@ -0,0 +1,40 @@ +use std::{ + env, + path::PathBuf, +}; + +use maud::{ + html, + Markup, +}; + +use crate::page::{ + asset, + Page, +}; + +/// Creates a simple text page. +pub fn create(page: Page, title: &str, body: Markup) -> Markup { + crate::page::create( + html! { + (asset::Css::Shared("text.css")) + }, + html! { + nav { + a href="/" { "HOME" } + a href="/about" { "ABOUT" } + a href="/blog" { "BLOG" } + a href="/contact" { "CONTACT" } + + span.title { (title) } + } + + (body) + + footer { + "Served by " + (env::current_exe().unwrap_or_else(|_| PathBuf::from("asd")).display()) + } + }, + ) +} diff --git a/src/page/text/text.css b/src/page/text/text.css new file mode 100644 index 0000000..e69de29 diff --git a/src/routes/index/index.css b/src/routes/index/index.css index e428d6d..68ae63f 100644 --- a/src/routes/index/index.css +++ b/src/routes/index/index.css @@ -13,6 +13,8 @@ position: absolute; } +/* I do not regret writing this. It's beautiful. */ + .front { background: linear-gradient(to bottom, cyan, blue); } @@ -65,4 +67,4 @@ .left::after { background: linear-gradient(to bottom, cyan, blue); mask-image: linear-gradient(to left, blue, transparent); -} \ No newline at end of file +}