commit 58b974e1deb600259ab0188400aee43e03e849f8
Author: Luke Willis <lukejw@loquat.dev>
Date: Thu, 21 Aug 2025 23:25:06 -0400
Setup skeleton site
Diffstat:
7 files changed, 176 insertions(+), 0 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -0,0 +1 @@
+site
diff --git a/css/reset.css b/css/reset.css
@@ -0,0 +1,41 @@
+/*
+ Josh's Custom CSS Reset
+ https://www.joshwcomeau.com/css/custom-css-reset/
+*/
+
+*, *::before, *::after {
+ box-sizing: border-box;
+}
+
+* {
+ margin: 0;
+}
+
+body {
+ line-height: 1.5;
+ -webkit-font-smoothing: antialiased;
+}
+
+img, picture, video, canvas, svg {
+ display: block;
+ max-width: 100%;
+}
+
+input, button, textarea, select {
+ font: inherit;
+}
+
+p, h1, h2, h3, h4, h5, h6 {
+ overflow-wrap: break-word;
+}
+
+p {
+ text-wrap: pretty;
+}
+h1, h2, h3, h4, h5, h6 {
+ text-wrap: balance;
+}
+
+#root, #__next {
+ isolation: isolate;
+}
diff --git a/css/style.css b/css/style.css
@@ -0,0 +1,34 @@
+html {
+ scrollbar-gutter: stable both-edges;
+ font-family: serif;
+}
+
+body {
+ max-width: 46rem;
+ padding-inline: 3rem;
+ margin-inline: auto;
+}
+
+table {
+ width: 100%;
+}
+
+nav > table {
+ width: 100%;
+}
+
+hr {
+ margin-block: 1rem;
+}
+
+footer {
+ text-align: center;
+}
+
+.hidden {
+ display: none;
+}
+
+p {
+ margin-block: 1rem;
+}
diff --git a/grug.scm b/grug.scm
@@ -0,0 +1,60 @@
+(use-modules (grug site)
+ (grug builders)
+ (grug publishers)
+ (srfi srfi-19))
+
+(define (stylesheet name)
+ `(link (@ (rel "stylesheet")
+ (href ,(string-append "/css/" name ".css")))))
+
+(define (link name uri)
+ `(a (@ (href ,uri)) ,name))
+
+(define (site-template site-metadata metadata body)
+ `(*TOP* (*DECL* DOCTYPE html)
+ (head
+ (meta (@ (charset "utf-8")))
+ (meta (@ (name "viewport")
+ (content "width=device-width, initial-scale=1")))
+ (title ,(string-append (assoc-ref metadata 'title)
+ " - "
+ (assoc-ref site-metadata 'title)))
+ ,(stylesheet "reset")
+ ,(stylesheet "style"))
+ (body
+ (nav
+ (table
+ (tbody
+ (tr
+ (td (@ (align "left"))
+ (a (@ (href "/"))
+ "Home")
+ " | "
+ (a (@ (href "/about.html"))
+ "About"))
+ (td (@ (align "right"))
+ (span (@ (class "hidden")) " | ")
+ (a (@ (href "/contact.html"))
+ "Contact"))))))
+ (hr)
+ (article
+ (header
+ (h1 ,(assoc-ref metadata 'title)))
+ ,@body)
+ (hr)
+ (footer
+ (p "© 2025 Luke Willis")))))
+
+(site #:metadata `((title . "MonasTech"))
+ #:builders (list (simple-pages
+ "pages"
+ #:template site-template)
+ (copy-directory
+ "css")
+ (copy-directory
+ "img"))
+ #:publishers (list (rsync-publisher #:user "lukejw"
+ #:host "monastech.xyz"
+ #:destination "/var/www/htdocs/www.monastech.xyz/"
+ #:flags (cons "--rsync-path=openrsync"
+ %default-rsync-flags))))
diff --git a/pages/about.md b/pages/about.md
@@ -0,0 +1,16 @@
+`((title . "About"));`
+## TL;DR
+I want to help people make their technology serve them, rather than the other
+way around. Technology "in the world, not of the world".
+
+## The Idea
+As a Christian, there is this idea of being "in the world, not of the
+world". In a world dominated by proprietary technology outside of the user's
+control, we could really use technology that is "in the world, not of the
+world". We still need it to interact with the world (in most people's opinion)
+but that doesn't mean that we can't strike a balance. I'd like to help people do
+that, without them needed to become nerds like me.
+
+## Me
+This website is still a work in progress, but you can find out more about me at
+https://www.loquat.dev/
diff --git a/pages/contact.md b/pages/contact.md
@@ -0,0 +1,16 @@
+`((title . "Contact"));`
+I'm still setting everything up. If you've somehow managed to find me already,
+feel free to contact me.
+
+## E-mail
+[lukejw@loquat.dev](mailto:lukejw@loquat.dev)
+
+## Signal
+@loquatdev.07
+
+I don't use anything else, because everything else is bad, frankly. If I can
+confirm you're a real human being via one of these forms of contact, I can give
+you my phone number if you prefer.
+
+I am considering setting up IRC or Matrix for communication as well. All in good
+time, of course.
diff --git a/pages/index.md b/pages/index.md
@@ -0,0 +1,8 @@
+`((title . "Home"));`
+Hello, world!
+
+This website is a work in progress.
+
+Come back soon!
+
+P.S. This site should render well in `lynx`