Basic layout

This commit is contained in:
Logan 2024-07-20 06:15:37 -05:00
parent f4bbef4baa
commit 4da0824990
4 changed files with 167 additions and 20 deletions

59
dist/index.html vendored
View file

@ -3,16 +3,19 @@
src: url(/res/merriweather-regular.ttf); src: url(/res/merriweather-regular.ttf);
} }
body { body {
font-family: merriweather; font-family: merriweather;
background-color: black; background-color: #141013;
height: 100%; height: 100%;
padding: 5px; padding: 5px;
line-height: 1.75em;
} }
main { main {
padding: 10px; border-radius: 15px;
background-color: white; padding: 15px;
background-color: #ffeedd;
margin: auto; margin: auto;
max-width: 750px; max-width: 750px;
} }
@ -26,13 +29,59 @@ main {
left: 0; left: 0;
z-index: -9999; z-index: -9999;
} }
table {
margin-left: auto;
margin-right: auto;
}
table, th, td {
padding: 5px;
border: 3px solid black;
border-style: solid;
border-collapse: collapse;
/* text-align: center; */
align-content: center;
}
a {
color: #df3e23;
font-style: italic;
text-decoration: none;
}
a:visited {
color: #df3e23;
font-style: italic;
text-decoration: none;
}
h1:before {
content: "> ";
}
h2:before {
content: "=> ";
}
</style><script>let bg; </style><script>let bg;
let ctd; let ctd;
window.onload = function() { window.onload = function() {
bg = document.getElementById("bg"); bg = document.getElementById("bg");
ctx = bg.getContext("2d"); ctx = bg.getContext("2d");
ctx.fillStyle = "red"; ctx.fillStyle = "#141013";
ctx.fillRect(0, 0, bg.width, bg.height); ctx.fillRect(0, 0, bg.width, bg.height);
} }
</script></head><body><main><h1>test</h1></main></body><canvas class="bg" id="bg"></html> </script></head><body><main><h1>logan's site</h1><hr><h2>me</h2><p>
i am a programming and philosophy enthusiast. once upon a time i was a
competitive debater on a few local and state circuits. after over 10
years of doing robotics i'm finally starting to get the hang of it.
currently in the process of discovering my love for hypertext and the
world wide web!
<hr><h2>my interests</h2><ul><li>music</li><li>books</li><li>websites</li><li>you!</li></ul></p><hr><h2>writeups</h2><ul><li>dependency paranoia</li><li>on build systems</li></ul><hr><h2>programming</h2><p>
i have been making things for much longer than i have bothered
to document (or finish) my work. i work on whatever happens to
catch my interest, using whatever tools and languages i fancy at
the time. here are some of my favorite projects i've worked on:
</p><table><tr><th>project</th><th>summary</th><th>date</th></tr><tr><td><a href="">web server</a></td><td>https server implementation</td><td>2024</td></tr><tr><td><a href="">html templater</a></td><td>interpreter and inline templating language for html</td><td>2024</td></tr><tr><td><a href="">forte</a></td><td>safety focused stack machine emulator and assembly language</td><td>2024</td></tr><tr><td><a href="">nrange</a></td><td>cartesian product for N vectors in O(N) time/space</td><td>2023</td></tr><tr><td><a href="">fishbowl</a></td><td>kinematic image processing on the web</td><td>2022</td></tr><tr><td><a href="">stocks</a></td><td>play money stock trading algorithm</td><td>2021</td></tr><tr><td><a href="">the crypt</a></td><td>platforming video game in Godot</td><td>2020</td></tr></table><hr><h2>sites i manage</h2><ul><li><a href="https://utsa-rowdysub.org">UTSA Advanced Robotics RoboSub team website (2024)</a></li></ul></main></body><canvas class="bg" id="bg"></html>

View file

@ -4,6 +4,6 @@ window.onload = function() {
bg = document.getElementById("bg"); bg = document.getElementById("bg");
ctx = bg.getContext("2d"); ctx = bg.getContext("2d");
ctx.fillStyle = "black"; ctx.fillStyle = "#141013";
ctx.fillRect(0, 0, bg.width, bg.height); ctx.fillRect(0, 0, bg.width, bg.height);
} }

View file

@ -3,16 +3,19 @@
src: url(/res/merriweather-regular.ttf); src: url(/res/merriweather-regular.ttf);
} }
body { body {
font-family: merriweather; font-family: merriweather;
background-color: black; background-color: #141013;
height: 100%; height: 100%;
padding: 5px; padding: 5px;
line-height: 1.75em;
} }
main { main {
padding: 10px; border-radius: 15px;
background-color: white; padding: 15px;
background-color: #ffeedd;
margin: auto; margin: auto;
max-width: 750px; max-width: 750px;
} }
@ -26,3 +29,38 @@ main {
left: 0; left: 0;
z-index: -9999; z-index: -9999;
} }
table {
margin-left: auto;
margin-right: auto;
}
table, th, td {
padding: 5px;
border: 3px solid black;
border-style: solid;
border-collapse: collapse;
/* text-align: center; */
align-content: center;
}
a {
color: #df3e23;
font-style: italic;
text-decoration: none;
}
a:visited {
color: #df3e23;
font-style: italic;
text-decoration: none;
}
h1:before {
content: "> ";
}
h2:before {
content: "=> ";
}

View file

@ -1,6 +1,6 @@
use maud::*;
use std::fs::File; use std::fs::File;
use std::io::prelude::*; use std::io::prelude::*;
use maud::*;
fn head() -> Markup { fn head() -> Markup {
html! { html! {
@ -17,7 +17,7 @@ fn head() -> Markup {
} }
fn template(inner: Markup) -> Markup { fn template(inner: Markup) -> Markup {
html!{ html! {
(DOCTYPE) (DOCTYPE)
html { html {
@ -32,24 +32,84 @@ fn template(inner: Markup) -> Markup {
} }
} }
fn index() -> Markup { fn project(name: &str, desc: &str, language: &str, link: &str) -> Markup {
template( html! {
html! { tr {
h1 {"test"} td { a href=(link) {(name)}}
td {(desc)}
td {(language)}
} }
) }
}
fn index() -> Markup {
template(html! {
h1 {"logan's site"}
hr;
h2 {"me"}
p {
"
i am a programming and philosophy enthusiast. once upon a time i was a
competitive debater on a few local and state circuits. after over 10
years of doing robotics i'm finally starting to get the hang of it.
currently in the process of discovering my love for hypertext and the
world wide web!
"
hr;
h2 {"my interests"}
ul {
li {"music"}
li {"books"}
li {"websites"}
li {"you!"}
}
}
hr;
h2 {"writeups"}
ul {
li { "dependency paranoia" }
li { "on build systems" }
}
hr;
h2 {"programming"}
p {
"
i have been making things for much longer than i have bothered
to document (or finish) my work. i work on whatever happens to
catch my interest, using whatever tools and languages i fancy at
the time. here are some of my favorite projects i've worked on:
"
}
table {
tr {
th {"project"}
th {"summary"}
th {"date"}
}
(project("web server", "https server implementation", "2024", ""))
(project("html templater", "interpreter and inline templating language for html", "2024", ""))
(project("forte", "safety focused stack machine emulator and assembly language", "2024", ""))
(project("nrange", "cartesian product for N vectors in O(N) time/space", "2023", ""))
(project("fishbowl", "kinematic image processing on the web", "2022", ""))
(project("stocks", "play money stock trading algorithm", "2021", ""))
(project("the crypt", "platforming video game in Godot", "2020", ""))
}
hr;
h2 {"sites i manage"}
ul {
li { a href="https://utsa-rowdysub.org" {"UTSA Advanced Robotics RoboSub team website (2024)"}}
}
})
} }
fn main() -> std::io::Result<()> { fn main() -> std::io::Result<()> {
make_page("index", index())?; make_page("index", index())?;
Ok(()) Ok(())
} }
fn make_page(path: &str, html: Markup) -> std::io::Result<()> { fn make_page(path: &str, html: Markup) -> std::io::Result<()> {
let dist_path: String = "./dist/".to_owned(); let dist_path: String = "./dist/".to_owned();
let mut file = File::create( let mut file = File::create(dist_path + path + ".html")?;
dist_path + path + ".html"
)?;
file.write_all(html.into_string().as_bytes())?; file.write_all(html.into_string().as_bytes())?;
Ok(()) Ok(())