mirror of
https://github.com/RGBCube/Site
synced 2025-08-01 13:37:49 +00:00
Add page::text
This commit is contained in:
parent
0fc2afb396
commit
1f6c5ebddd
9 changed files with 78 additions and 12 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -6,6 +6,7 @@
|
|||
!src/errors/not_found/
|
||||
!src/page/
|
||||
!src/page/cube/
|
||||
!src/page/text/
|
||||
!src/routes/
|
||||
!src/routes/index/
|
||||
|
||||
|
|
BIN
src/page/BaiJamjureeMedium.woff2
Normal file
BIN
src/page/BaiJamjureeMedium.woff2
Normal file
Binary file not shown.
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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<Manifest> = LazyLock::new(|| {
|
||||
pub static MANIFEST: LazyLock<Manifest> = 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)
|
||||
}
|
||||
|
||||
|
|
19
src/page/page.css
Normal file
19
src/page/page.css
Normal file
|
@ -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";
|
||||
}
|
40
src/page/text/mod.rs
Normal file
40
src/page/text/mod.rs
Normal file
|
@ -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())
|
||||
}
|
||||
},
|
||||
)
|
||||
}
|
0
src/page/text/text.css
Normal file
0
src/page/text/text.css
Normal file
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue