commit ba74a9bc3b864663d179bbe82b7ff02f6841baf1
Author: Luke Willis <lukejw@monastech.xyz>
Date: Sun, 8 Mar 2026 16:33:28 -0400
Initial commit (move to gitolite)
Diffstat:
21 files changed, 609 insertions(+), 0 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -0,0 +1 @@
+site
diff --git a/README.md b/README.md
@@ -0,0 +1,3 @@
+# pages
+
+This is the source code used to build the MonasTech website.
diff --git a/css/style.css b/css/style.css
@@ -0,0 +1,180 @@
+:root {
+ --bg: #FFFCF0;
+ --bg-2: #F2F0E5;
+ --ui: #E6E4D9;
+ --ui-2: #DAD8CE;
+ --ui-3: #CECDC3;
+ --tx: #100F0F;
+ --tx-2: #6F6E69;
+ --ye: #AD8301;
+ --ye-2: #D0A215;
+ --cy: #24837B;
+ --cy-2: #3AA99F;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --bg: #100F0F;
+ --bg-2: #1C1B1A;
+ --ui: #282726;
+ --ui-2: #343331;
+ --ui-3: #403E3C;
+ --tx: #CECDC3;
+ --tx-2: #878580;
+ --ye: #D0A215;
+ --ye-2: #AD8301;
+ --cy: #3AA99F;
+ --cy-2: #24837B;
+ }
+}
+
+/* Set the baseline for rem units */
+html { font-size: 2.4vw; }
+@media all and (min-width:1000px) { html { font-size: 24px; } }
+@media all and (max-width:520px) {
+ html { font-size: 18px; }
+
+}
+
+html {
+ /* Keep width uniform */
+ scrollbar-gutter: stable both-edges;
+
+ /* Colors */
+ background-color: var(--bg);
+ color: var(--tx);
+
+ /* Global font settings */
+ font-family: "Vollkorn", serif;
+ font-optical-sizing: auto;
+ font-weight: 400;
+ font-style: normal;
+}
+
+body {
+ /* Document size */
+ width: 100%;
+ max-width: 1000px;
+ margin-inline: auto;
+
+ /* Font settings */
+ line-height: 1.45;
+ font-size: 0.91rem;
+ text-rendering: optimizeLegibility;
+ font-feature-settings: "kern";
+}
+
+#cover {
+ position: fixed;
+ width: 9rem;
+}
+
+#coverLogo {
+ /* Make sure the area is reserved for when the area is still winning */
+ width: 9rem;
+ height: 9rem;
+
+ margin-bottom: 0.2rem;
+}
+
+#coverTitle {
+ text-align: center;
+ display: block;
+ font-size: 150%;
+ font-weight: 900;
+ color: var(--ye);
+}
+
+#coverSubtitle {
+ color: var(--tx-2);
+ width: 10rem;
+}
+
+#coverNav {
+ width: 9rem;
+ margin-top: 1rem;
+}
+
+#coverNav a {
+ display: block;
+ margin-bottom: 0.2rem;
+ text-align: center;
+}
+
+#title {
+ font-size: 2.1rem;
+ margin-bottom: 0;
+ border-bottom: 0.1rem solid var(--ui);
+}
+
+#content {
+ margin-left: 13.5rem;
+}
+
+/* Adjust rendering for mobile */
+@media all and (max-width:520px) {
+ body {
+ padding: 0;
+ }
+ #cover {
+ position: relative;
+ width: 9rem;
+ margin-inline: auto;
+ display: block;
+ float: none;
+ }
+ #content {
+ margin: 0;
+ padding: 1rem;
+ }
+}
+
+h1 {
+ font-family: "Vollkorn SC", serif;
+ font-size: 110%;
+}
+
+h2 {
+ font-family: "Vollkorn SC", serif;
+ font-size: 105%;
+}
+
+.hidden {
+ display: none;
+}
+
+.postLink {
+ display: block;
+}
+
+a {
+ font-family: "Vollkorn SC", serif;
+ color: var(--cy);
+ text-decoration: none;
+}
+
+a:hover {
+ color: var(--cy-2);
+}
+
+code {
+ font-family: monospace;
+ background-color: #F2F0E5;
+ font-size: 80%;
+ padding: 0.2rem;
+ border-radius: 0.4rem;
+}
+
+img {
+ display: block;
+ max-width: 100%;
+}
+
+hr {
+ border: 0.05rem solid var(--ui);
+ margin-block: 1rem;
+}
+
+footer {
+ text-align: center;
+}
diff --git a/grug.scm b/grug.scm
@@ -0,0 +1,111 @@
+(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 (hspan contents)
+ `(span (@ (class "hidden")) ,contents))
+
+(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")))
+ ;; TODO: Self-host fonts
+ (link (@ (rel "preconnect")
+ (href "https://fonts.googleapis.com")))
+ (link (@ (rel "preconnect")
+ (href "https://fonts.gstatic.com")
+ (crossorigin)))
+ (link (@ (href "https://fonts.googleapis.com/css2?family=Vollkorn:ital,wght@0,400..900;1,400..900&display=swap")
+ (rel "stylesheet")))
+ (link (@ (href "https://fonts.googleapis.com/css2?family=Vollkorn+SC:wght@400;600;700;900&display=swap")
+ (rel "stylesheet")))
+ (title ,(string-append (assoc-ref metadata 'title)
+ " - "
+ (assoc-ref site-metadata 'title)))
+ (link (@ (rel "icon")
+ (href "/img/favicon.png")))
+ ,(stylesheet "style"))
+ (body
+ (div (@ (id "cover"))
+ (img (@ (id "coverLogo")
+ (src "/img/logo.svg")))
+ (a (@ (id "coverTitle")
+ (href "/"))
+ ,(assoc-ref site-metadata 'title))
+ (div (@ (id "coverSubtitle"))
+ "Technology in the world, not of the world.")
+ (hr (@ (class "hidden")))
+ (nav (@ (id "coverNav"))
+ ,(link "Home" "/")
+ ,(hspan " | ")
+ ,(link "Portfolio" "/portfolio.html")
+ ,(hspan " | ")
+ ,(link "Services" "/services.html")
+ ,(hspan " | ")
+ ,(link "Videos" "https://videos.monastech.xyz/")
+ ,(hspan " | ")
+ ,(link "About" "/about.html")
+ ,(hspan " | ")
+ ,(link "Contact" "/contact.html"))
+ (hr (@ (class "hidden"))))
+
+ (div (@ (id "content"))
+ (h1 (@ (id "title"))
+ ,(assoc-ref metadata 'title))
+ ,@body
+ (hr)
+ (footer
+ (p "© 2025 Luke Willis"))))))
+
+(define (blog-collection-template posts)
+ `((p "We specialize in the assembly of custom operating systems in order to \
+provide a more stable, secure, fast and "
+ (a (@ (href "https://www.gnu.org/philosophy/free-sw.html"))
+ "free")
+ " computing experience.")
+ (p "If you're frustrated with using Windows or MacOS but don't know what \
+your other options are, we can give you an alternative that perfectly fits \
+your practical needs and personal preferences.")
+ (p "Check out the " ,(link "FAQ" "/faq.html") " for more information.")
+ (h2 "Recent Articles")
+ ,@(map
+ (lambda (post)
+ `(p (@ (class "post"))
+ (span (@ (class "postLink"))
+ (a (@ (href ,(assoc-ref post 'uri)))
+ ,(assoc-ref post 'title)))
+ (br (@ (class "hidden")))
+ ;; Parse ISO 8601 date from 'date and reformat it
+ (span (@ (class "postDate"))
+ ,(date->string
+ (string->date (assoc-ref post 'date) "~Y~m~d")
+ "~B ~d, ~Y"))))
+ (sort posts
+ (lambda (a b)
+ (string>? (assoc-ref a 'date)
+ (assoc-ref b 'date)))))))
+
+(site #:metadata `((title . "MonasTech"))
+ #:builders (list (simple-pages
+ "pages"
+ #:template site-template)
+ (blog
+ "posts"
+ #:metadata `((title . "Welcome to MonasTech"))
+ #:template site-template
+ #:collection-template blog-collection-template)
+ (copy-directory "css")
+ (copy-directory "img"))
+ #:publishers (list (rsync-publisher #:user "lukejw"
+ #:host "monastech.xyz"
+ #:destination "/var/www/monastech.xyz/")))
diff --git a/img/20250930_11h00m57s_grim.webp b/img/20250930_11h00m57s_grim.webp
Binary files differ.
diff --git a/img/example-control-room.webp b/img/example-control-room.webp
Binary files differ.
diff --git a/img/favicon.png b/img/favicon.png
Binary files differ.
diff --git a/img/logo.svg b/img/logo.svg
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ fill="#000000"
+ width="512"
+ height="512"
+ viewBox="144 144 327.68 327.68"
+ version="1.1"
+ id="svg1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs1" />
+ <style>
+ .primary { fill: #CECDC3; }
+ .secondary { fill: #AD8301; }
+
+ @media (prefers-color-scheme: dark) {
+ .primary { fill: #403E3C; }
+ .secondary { fill: #D0A215; }
+ }
+ </style>
+ <path
+ id="path1"
+ class="primary"
+ style="fill-opacity:1;stroke-width:1"
+ d="m 307.8325,144 c -34.39179,0 -66.28118,10.65409 -92.63625,28.765 h -0.055 l -0.64,0.44625 -6.55875,4.5575 h 0.32625 c -14.2772,10.94559 -26.67666,24.20075 -36.69125,39.18875 h -0.0387 l -0.74125,1.12875 -2.54,3.87 h 0.205 c -7.47788,12.1173 -13.44753,25.24436 -17.59,39.18875 h -0.0737 l -0.51875,1.815 -0.90375,3.18875 h 0.11625 c -3.30067,12.54825 -5.18184,25.65421 -5.39125,39.1875 L 144,305.3325 v 5.01125 h 0.0888 c 0.20945,13.53329 2.09159,26.64299 5.4,39.19125 h -0.1175 l 0.90375,3.18875 0.52,1.815 h 0.0738 c 4.14237,13.93644 10.11276,27.06667 17.5825,39.18 H 168.245 l 2.54,3.87125 0.74125,1.12875 h 0.0387 c 10.01459,14.99198 22.41404,28.24592 36.69125,39.1925 h -0.325 l 6.5625,4.5575 0.6475,0.44625 h 0.05 c 15.5114,10.66029 32.95619,18.71101 51.68875,23.5525 v -10.56875 c -6.54059,-3.54028 -12.80851,-7.87876 -18.7275,-12.98875 h 17.77125 c 0.3108,0.47508 0.64188,0.89245 0.95625,1.3575 v -9.48625 c -5.84767,-10.10373 -11.04321,-22.21017 -15.27125,-36.065 h 10.5663 c -3.04206,-1.53156 -6.0083,-3.18567 -8.86625,-5.00375 h -3.15125 c -0.2371,-0.84211 -0.44355,-1.73081 -0.67375,-2.58375 -2.20142,-1.54464 -4.34752,-3.15903 -6.41625,-4.86875 0.61451,2.51422 1.23706,5.01888 1.90875,7.4525 H 212.19 c -5.56194,-12.03191 -9.96077,-25.19291 -13.04875,-39.18 h 18.34125 c -0.85245,-1.64491 -1.67003,-3.3079 -2.43375,-5.00375 h -16.965 c -2.43961,-12.52046 -3.82866,-25.64332 -3.98375,-39.1925 h 12.07375 c -0.0202,-0.83495 -0.0937,-1.65641 -0.0937,-2.49625 8.1e-4,-0.83955 0.0736,-1.66642 0.095,-2.5025 h -12.0675 c 0.15514,-13.54918 1.54027,-26.66432 3.98375,-39.18875 h 17.005 c 0.765,-1.6968 1.59706,-3.35768 2.4525,-5.0075 H 199.15 c 3.08739,-13.98708 7.48264,-27.14765 13.04875,-39.1875 h 32.70375 0.0737 c -0.68118,2.47453 -1.31432,5.01976 -1.9375,7.5775 2.06218,-1.70465 4.20375,-3.32157 6.40875,-4.8675 0.24071,-0.89398 0.45796,-1.8241 0.70625,-2.70625 h 3.2725 c 2.87839,-1.82078 5.89288,-3.46327 8.97875,-5.00375 H 251.6087 c 4.65819,-15.25908 10.44451,-28.53981 17.0375,-39.1875 h 21.13125 c -2.38143,10.91083 -4.44104,24.14092 -6.10875,39.1875 H 266.88 v 5.00375 h 16.26875 c -1.2334,12.09446 -2.21112,25.23518 -2.89375,39.1875 H 266.88 v 5.00375 h 13.16625 c -0.54688,12.54031 -0.84885,25.65024 -0.88375,39.1875 h -8.09625 l 8,5 h 0.0562 0.0163 c 4e-5,0.0157 -4e-5,0.0306 0,0.0462 l 5.04,3.14875 c -0.006,-1.07747 -0.0385,-2.11204 -0.0412,-3.195 H 331.5 c -0.003,1.092 -0.0349,2.13489 -0.0412,3.22125 l 5.0575,-3.16 c 5e-5,-0.0199 10e-4,-0.0388 10e-4,-0.0587 h 0.0925 l 8,-5 h -8.08 -0.0312 c -0.0349,-13.54123 -0.34173,-26.65116 -0.8925,-39.1875 H 348.8 v -5.01 h -13.395 c -0.68652,-13.94836 -1.66409,-27.09031 -2.8975,-39.18875 H 348.8 v -4.99625 h -16.815 c -1.66394,-15.04161 -3.72846,-28.28089 -6.11375,-39.18875 h 21.135 c 6.58971,10.65167 12.38118,23.93365 17.035,39.18875 H 353.415 c 3.06971,1.53822 6.06494,3.1804 8.92875,4.99625 h 3.15875 c 0.23982,0.85175 0.4485,1.75085 0.68125,2.61375 2.20334,1.54288 4.34285,3.15746 6.40375,4.85875 -0.61537,-2.52024 -1.2385,-5.0294 -1.91,-7.46875 H 403.46 c 5.56194,12.03588 9.95598,25.19644 13.04,39.1875 h -18.33375 c 0.85345,1.64898 1.68186,3.30918 2.445,5.005 h 16.955 c 2.45133,12.52046 3.83503,25.63832 3.98625,39.1875 h -12.045 c 0.0208,0.83657 0.0922,1.66372 0.0925,2.50375 0,0.83984 -0.0735,1.6613 -0.0937,2.49625 h 12.0387 c -0.15126,13.54918 -1.53503,26.67105 -3.98625,39.1925 h -16.9275 c -0.76433,1.69722 -1.58304,3.36131 -2.43625,5.0075 H 416.5 c -3.08738,13.98708 -7.47786,27.14809 -13.04,39.18 h -32.7125 -0.07 c 0.6679,-2.42628 1.28665,-4.92294 1.89875,-7.42875 -2.06751,1.70716 -4.21136,3.32015 -6.41125,4.8625 -0.22881,0.84671 -0.43435,1.72897 -0.67,2.565 h -3.1275 c -2.85677,1.81715 -5.82179,3.47037 -8.8625,5.00125 h 10.53625 c -4.2212,13.83121 -9.40397,25.9188 -15.24125,36.0125 V 444.23 c 0.30536,-0.452 0.6267,-0.85728 0.92875,-1.31875 h 0.001 17.77125 c -5.91104,5.10299 -12.17,9.43585 -18.70125,12.97375 v 10.57875 c 18.72688,-4.84174 36.16522,-12.89072 51.6725,-23.54875 h 0.05 l 0.555,-0.3925 c 0.031,-0.0194 0.0577,-0.0343 0.0888,-0.0537 l 6.55875,-4.5575 h -0.32875 c 14.2772,-10.94559 26.68416,-24.20052 36.69875,-39.1925 h 0.0387 l 0.74125,-1.12875 2.54,-3.87125 h -0.205 c 7.47788,-12.11731 13.44754,-25.24356 17.59,-39.18 h 0.0813 l 0.515,-1.815 0.9125,-3.18875 h -0.1175 c 3.30067,-12.54826 5.18672,-25.65796 5.4,-39.19125 h 0.0888 l -0.004,-2.50125 V 305.34 h -0.105 c -0.20945,-13.53329 -2.09421,-26.64322 -5.39875,-39.1875 h 0.11625 l -0.91125,-3.18875 -0.51625,-1.815 H 464.78 c -4.14236,-13.94438 -10.11232,-27.07019 -17.59,-39.1875 h 0.20625 L 444.855,218.09 l -0.74,-1.12875 h -0.0387 C 434.05768,201.96927 421.66096,188.71511 407.38375,177.7725 H 407.71 l -6.5625,-4.5575 -0.6325,-0.45 h -0.0537 C 374.11407,154.65508 342.21633,144 307.8325,144 Z m -0.004,5 c 0.55077,0 1.29139,0.24426 2.3425,1.245 1.55531,1.47397 3.41389,4.53422 5.14375,8.88625 1.47389,3.66161 2.90045,8.28141 4.24625,13.63375 h -23.445 c 1.88109,-7.45507 3.91637,-13.48269 5.9875,-17.54 1.16748,-2.30788 2.35086,-3.99477 3.3825,-4.98 1.05111,-1.00073 1.79173,-1.245 2.3425,-1.245 z m 8.67625,1.38625 c 3.90962,1.17142 7.7411,3.02914 11.4875,5.72875 l 10e-4,-0.001 c 5.49204,3.96029 10.75125,9.64707 15.66125,16.64875 h -18.95125 c -2.02079,-8.24638 -4.22694,-14.95607 -6.69375,-19.80875 -0.48483,-0.94643 -0.98917,-1.74908 -1.505,-2.5675 z m -17.3925,0.01 h 10e-4 c -1.2062,1.93164 -2.32779,4.19351 -3.41375,6.87375 -1.70266,4.2434 -3.27712,9.46434 -4.75875,15.4925 h -18.9425 c 4.90642,-7.00515 10.16941,-12.68379 15.66125,-16.64875 3.73895,-2.69574 7.55856,-4.54609 11.4525,-5.7175 z M 284.12,152.56 c -6.6052,4.91832 -12.68077,11.77186 -18.1875,20.20125 H 248.16125 C 259.10621,163.30473 271.20806,156.40382 284.12,152.56 Z m 47.4225,0.001 c 12.90797,3.84392 25.01258,10.74811 35.9625,20.20125 H 349.72125 C 344.21363,164.33356 338.14839,157.47922 331.5425,152.561 Z m 18.71375,2.30125 c 14.60288,4.05334 28.35701,10.10811 40.94625,17.9 h -16.185 c -7.62919,-7.23403 -15.9481,-13.24194 -24.76125,-17.9 z m -84.86,0.002 c -8.81991,4.65846 -17.13095,10.66616 -24.7675,17.9 h -16.1825 c 12.60116,-7.79646 26.34712,-13.85063 40.95,-17.9 z m -48.6525,22.9 h 18.865 c -10.3641,10.96544 -19.34194,24.21142 -26.59125,39.1875 h -31.35875 c 10.63914,-15.22829 23.86552,-28.513 39.085,-39.1875 z m 25.89,0.001 h 20.18 c -6.42687,10.96942 -11.96583,24.20744 -16.43,39.1875 h -31.7775 c 7.64856,-15.25114 17.14808,-28.53583 28.0275,-39.1875 z m 52.27125,0 h 25.8425 c 2.40088,10.73309 4.50646,24.0019 6.1975,39.1875 h -38.2425 c 1.69492,-15.18957 3.79774,-28.45441 6.2025,-39.1875 z m 85.1475,0 h 18.865 c 15.21153,10.67451 28.43869,23.9592 39.08875,39.1875 H 406.64 c -7.24524,-14.97212 -16.22439,-28.22602 -26.5875,-39.1875 z m -27.2125,0.001 h 20.1875 c 10.87546,10.65465 20.37131,23.93365 28.02375,39.18875 H 369.3 369.26875 C 364.79674,201.97619 359.26319,188.7409 352.84,177.7675 Z m -178.54625,44.185 H 206.745 c -5.41836,12.12128 -9.73479,25.25503 -12.72875,39.1875 h -37.89 c 4.29359,-13.9712 10.40982,-27.14368 18.1675,-39.1875 z m 113.885,0.005 H 327.485 c 1.24115,12.06269 2.222,25.21929 2.91625,39.1875 h -45.135 c 0.68652,-13.96722 1.67135,-27.11984 2.9125,-39.1875 z m 120.7425,0.004 h 32.4525 c 7.75332,12.03985 13.86639,25.21233 18.16375,39.1875 h -0.001 -37.8865 c -2.99813,-13.93247 -7.31456,-27.06622 -12.72875,-39.1875 z M 154.6275,266.1475 h 38.37875 c -2.39314,12.54825 -3.75118,25.65546 -3.9025,39.18875 h -40.015 c 0.21721,-13.54918 2.1372,-26.66731 5.53875,-39.18875 z m 130.40625,0.001 H 330.635 c 0.53525,12.53237 0.84885,25.64354 0.88375,39.18875 h -47.3775 c 0.0349,-13.54124 0.34562,-26.66035 0.8925,-39.18875 z m 137.61375,0 h 38.37125 c 3.40542,12.5284 5.32922,25.63832 5.5425,39.1875 H 426.615 426.55 c -0.15126,-13.53329 -1.51711,-26.64321 -3.9025,-39.1875 z M 149.09,310.33625 h 40.015 c 0.15126,13.53329 1.51586,26.643 3.90125,39.19125 H 154.6325 c -3.40542,-12.52442 -5.32534,-25.64207 -5.5425,-39.19125 z m 277.46,0 h 40.015 c -0.21331,13.54918 -2.13708,26.66708 -5.5425,39.1925 h -38.375 c 2.39313,-12.54826 3.75118,-25.65921 3.9025,-39.1925 z m -270.42625,44.195 h 0.001 37.885 c 2.99813,13.9285 7.30829,27.05872 12.72625,39.18 h -32.4525 c -7.74944,-12.03588 -13.86661,-25.2088 -18.16,-39.18 z m 265.51375,0.005 h 37.88625 c -4.28585,13.96722 -10.40309,27.14015 -18.16375,39.18 h -32.4475 c 5.41836,-12.12127 9.73115,-25.25548 12.725,-39.18 z m -243.99,44.17875 h 31.35875 c 7.24911,14.97212 16.22814,28.2258 26.59125,39.19125 H 216.735 C 201.52347,427.23175 188.29756,413.95124 177.6475,398.715 Z m 228.99625,0 h 31.35875 c -10.64311,15.23624 -23.87369,28.51402 -39.08125,39.1925 H 380.0525 c 10.37105,-10.96545 19.34194,-24.22039 26.59125,-39.1925 z m -192.0525,0.001 h 31.76125 0.0238 c 4.46815,14.98006 10.0068,28.21785 16.43,39.19125 h -20.18 C 231.73893,427.2526 222.24771,413.97507 214.5913,398.716 Z m 154.68375,0 h 31.7925 c -7.65243,15.25907 -17.15557,28.53561 -28.035,39.19125 h -20.18375 c 6.41903,-10.96942 11.9581,-24.21119 16.42625,-39.19125 z M 224.46,442.91 h 16.17625 c 7.6292,7.23404 15.94114,13.23867 24.76125,17.89375 C 250.79462,456.75816 237.04924,450.70289 224.46,442.91 Z m 150.5625,10e-4 H 391.2 c -12.59421,7.79258 -26.33907,13.84736 -40.935,17.89375 8.81991,-4.65846 17.1279,-10.65892 24.7575,-17.89375 z m -98.92625,25.67625 c 0.15328,0.0302 0.30532,0.064 0.45875,0.0937 -0.1749,-0.0333 -0.28818,-0.0607 -0.45875,-0.0937 z m 5.67125,1.0075 c 0.51966,0.0835 1.03996,0.16394 1.56125,0.2425 -0.54332,-0.0798 -1.0399,-0.16104 -1.56125,-0.2425 z m 51.96375,0.0287 c -0.41329,0.0641 -0.80429,0.12819 -1.23125,0.19125 0.41097,-0.0624 0.82129,-0.12583 1.23125,-0.19125 z m -47.4225,0.61875 c 1.52845,0.20163 3.06227,0.38348 4.60375,0.5425 -1.6059,-0.16459 -3.12121,-0.35076 -4.60375,-0.5425 z m 42.90875,0.0188 c -1.40386,0.18032 -2.8324,0.35645 -4.34625,0.5125 1.45496,-0.15116 2.9029,-0.32336 4.34625,-0.5125 z m -36.7275,0.6765 c 1.97133,0.1841 3.95267,0.3317 5.94375,0.445 -2.04647,-0.11943 -4.03621,-0.26707 -5.94375,-0.445 z m 30.6125,0.007 c -1.85925,0.17244 -3.79644,0.31552 -5.7875,0.4325 1.93844,-0.1113 3.86778,-0.25408 5.7875,-0.4325 z m -23.1,0.52875 c 2.59627,0.12289 5.20327,0.20625 7.83,0.20625 -2.69257,-1.3e-4 -5.2978,-0.0826 -7.83,-0.20625 z m 15.6425,10e-4 c -2.51792,0.12237 -5.10703,0.20462 -7.78375,0.205 2.6115,-4.5e-4 5.20236,-0.0831 7.78375,-0.205 z" />
+ <path
+ id="path2"
+ class="secondary"
+ style="fill-opacity:1;stroke-width:1"
+ d="M 348.8,214.72125 V 302.72 l -40.96,25.6 -40.96,-25.6 v -87.93375 c -36.91375,16.23129 -60.76089,52.72908 -60.8,93.05375 0,41.62434 25.0034,77.39029 60.8,93.15375 V 466.56 c 0,0 17.91905,5.12 40.96,5.12 23.05041,0 40.96,-5.12 40.96,-5.12 v -65.56625 c 35.7966,-15.76346 60.8,-51.52941 60.8,-93.15375 -0.0134,-40.34826 -23.86468,-76.87795 -60.8,-93.11875 z m -102.4,108.195 40.96,26.88 v 20.48 l -40.96,-26.88 z m 122.88,0 v 20.48 l -40.96,26.88 v -20.48 z" />
+</svg>
diff --git a/img/notebook0.webp b/img/notebook0.webp
Binary files differ.
diff --git a/img/notebook1.webp b/img/notebook1.webp
Binary files differ.
diff --git a/pages/about.md b/pages/about.md
@@ -0,0 +1,2 @@
+`((title . "About") (description . "About"));`
+Coming soon...
diff --git a/pages/contact.md b/pages/contact.md
@@ -0,0 +1,9 @@
+`((title . "Contact") (subtitle . "Where to reach me"));`
+If you're ready to unplug and take technology back into your own hands, you can
+reach me at any of the following places:
+
+- Phone: [1-833-UNPLUG-ME](tel:+18338675846)
+- E-mail: [contact@monastech.xyz](mailto:contact@monastech.xyz)
+- Signal: [@loquatdev.07](https://signal.me/#eu/1bkNuGa82P8sHMdMr_R91LYio5OpSJTvpFNarrhMaL9iBq2aJgZI7KG-r7dt-s5v)
+
+I'm looking forward to working with you!
diff --git a/pages/faq.md b/pages/faq.md
@@ -0,0 +1,60 @@
+`((title . "FAQ") (subtitle . "Frequently asked questions"));`
+- **What even is an "Operating System"?**
+
+ An operating system is the software interface that allows you to interact
+with the hardware of a computer. Windows 10 and 11 are operating systems. It's
+essentially the platform which your applications run on top of.
+
+- **What is it that you do?**
+
+ I assemble and tailor a custom operating system to your personal needs. While
+operating systems like Windows have an excessive amount of code designed to
+cover a multitude of legacy edge cases - which often leaves it consuming far
+more resources than necessary, difficult to configure and much more vulnerable
+to viruses and other issues - my custom system is totally tailored to your
+device's hardware. This means a significantly more stable, secure and fast
+computing experience.
+
+- **Do I need to get a new computer?**
+
+ In most cases, no! I can tailor an operating system to any existing device's
+needs.
+
+ The only devices that are not able to be updated right now are computers with
+chipsets other than x86_64 (although this will change in the future). If you
+don't know what that means or you have an older device, you don't need to worry
+about it.
+
+- **Does it get pop-ups / viruses / or similar issues?**
+
+ While operating systems like Windows have a huge amount of legacy and bloated
+code that make it more vulnerable to these sorts of issues, my custom operating
+systems are based on a totally different software paradigm. The core of the
+operating system is significantly more minimal and is assembled using a variety
+of different independently tested parts. This means that the attack surface is
+incredibly small - there is no way for viruses or pop-ups to appear simply
+because they are not compatible with my systems. Even if you were to manually
+download viruses and attempt to run them, you would not be able to get them to
+work. Unless you were to explicity and manually open up a security hole in the
+system, it remains immune to any external forces. It's that simple.
+
+- **Does it go out of support, like Windows 10 did?**
+
+ This will absolutely never happen, ever. Because the system is based on
+free (as in freedom) and open-source software, each part is independently
+maintained and provided by a global network of volunteers and will continue to
+receive updates as long as people are using it. Even if I were to die or go
+bankrupt, your system would happily continue to update and maintain itself. My
+custom operating system is like a tailored suit for your computer that dry
+cleans itself. Even without internet, the system is very stable and will run for
+a long, long time.
+
+- **Is it stable?**
+
+ You can run a system for months without restarting it and it wouldn't have any
+issues. Because the system is tailored to your device, it only ever does what it
+needs to do.
+
+- **What if I have more questions?**
+
+ Feel free to [contact me](/contact.html) with any questions you have!
diff --git a/pages/portfolio.md b/pages/portfolio.md
@@ -0,0 +1,45 @@
+`((title . "Portfolio") (subtitle . "Previous Work"));`
+The following are previous systems I have developed for clients. Anything is
+possible with a custom system; take these as inspiration and get creative.
+
+## The "Notebook" system:
+
+
+
+
+
+This uses a tiling setup where all the windows are automatically organized
+into a grid. The user can manually control the grid via the keyboard. It's
+very efficient in both resource usage and user efficiency.
+
+Pictured is a PDF viewer on the left and a text editor + cbonsai on the right.
+The desktop background is one that I made.
+
+## My old personal system:
+
+
+
+This uses a similar tiling layout.
+
+## The "Control Room" system:
+
+
+
+This might be more familiar to the average user. Windows are floating like
+they do on, well, Windows. Minimized windows are filed away in tabs at the
+bottom left of the screen.
+
+Some fun widgets are displayed on the desktop. On the bottom, minimized
+windows are filed like folder tabs. On the top left, resource usage is
+displayed in real time. On the top right, the saints/feasts of the day are
+listed alongside their respective icons.
+
+These are just some demo widgets I threw together. I can have just about
+anything displayed on your desktop; Feel free to get creative with your
+ideas!
+
+## The "Fallout" system:
+
+![Screenshot]()
+
+This system was recently finished. More information is coming soon.
diff --git a/pages/services.md b/pages/services.md
@@ -0,0 +1,37 @@
+`((title . "Services") (subtitle . "What I can do for you"));`
+I provide two main services alongside some additional ones for specific
+circumstances.
+
+## Custom OS Creation; $150+
+I'll work with you step-by-step to assemble an operating system that fits
+your needs exactly. I can also do hardware upgrades if necessary and perform a
+deep clean of your machine if it's dirty. Prices vary based on the specific
+requirements; feel free to reach out and ask for a quote.
+
+I prefer working with the machine in-person. My business is based in
+Lehigh Acres, Florida. If you live more than an hour away, I'll likely have to
+do my work remotely. This is pretty inconvenient, so I'll charge an additional
+$50 if there isn't some special circumstance.
+
+## On-demand IT Support; $20/month
+I'll be available for you to call with questions about your system anytime.
+If something needs tweaking or you want a system makeover, I can do that for
+you.
+
+If I legitimately messed something up with your system when setting it up,
+I won't charge for this. That would be wrong, in my opinion.
+
+## Stripped Down Windows 10/11 Installation; $50
+If you absolutely need to use Windows and you absolutely need to squeeze
+more juice out of your machine, I can perform a manual installation of Windows
+where I explicity remove some "features" (spyware, bloatware, etc.). This isn't
+very stable because Microsoft could hypothetically undo these changes at any
+time. I only offer this service because I know some people (students, etc.) who
+absolutely need access to certain Windows applications. I personally dual-boot
+my own custom OS and one of these special Windows installations because I am
+required to use some specific Windows software in order to achieve my degree. I
+wouldn't normally recommend this, but I'd rather help people do it the right way
+than have them mess it up trying to do it on their own.
+
+Feel free to [contact me](/contact.html) with any questions. I'm looking forward
+to working with you.
diff --git a/posts/2026-01-06-ai-influence.md b/posts/2026-01-06-ai-influence.md
@@ -0,0 +1,17 @@
+`((title . "How your computer can change you without consent") (date . "2026-01-06"));`
+A blessed 2026 to you all.
+
+My good friend shared an article with me that I'd like to repost here.
+
+[The Spiritual Dangers of Artificial Intelligence](https://www.hts.edu/news_250722_2.html)
+
+I think it's important to recognize how technology influences us against our
+will. I have been using AI intermittently for debugging purposes, but after
+reading this I intend to finalize my decision of getting rid of it.
+
+If you're interested in deprogramming yourself from your the influence of third
+parties, that's what I'm trying to help people do.
+
+Stay safe and God bless!
+
+Luke
diff --git a/posts/new-artwork.md b/posts/new-artwork.md
@@ -0,0 +1,23 @@
+`((title . "New Artwork!") (date . "2025-10-14"));`
+Thanks to a good friend of mine, I now have some promotional artwork!
+
+I initially wanted to create a mascot similar to the classic *nix mascots, like
+Tux, Beastie and the GNU. I initially wanted to create some sort of design based
+off of a monk, but I couldn't really find something unique.
+
+However, after a bit of brainstorming, we took a unique angle. What's associated
+with monks / monasteries? Cats! We ended up coming up with this design after a
+bit of work:
+
+
+
+Here's the icon version:
+
+
+
+Our mascot is this little cat, curled up in a computer. He's wearing a beanie
+that he allegedly stole from one of the monks. I think it captures that vibe of
+a tech project. It's not something I can quanitfy or explain to you from an
+artistic perspective, but I like it.
+
+Thanks to my artist - you know who you are!
diff --git a/posts/new-site.md b/posts/new-site.md
@@ -0,0 +1,9 @@
+`((title . "Refreshed Website") (date . "2025-10-15"));`
+For the few people who have already managed to come across this site, I am happy
+to inform you that the site has undergone a bit of a refresher. I have redone
+some of the CSS and reworked some of the pages.
+
+It is still in development, of course, but it is much nicer than before. I'm now
+using some of that new artwork on the new homepage and for the site icon.
+
+Thank you to everyone who has already shown me support!
diff --git a/posts/remodeled-site.md b/posts/remodeled-site.md
@@ -0,0 +1,10 @@
+`((title . "Completely refurbished website") (date . "2026-02-10"));`
+As of today, the website has been completely refurbished.
+
+A new logo has also been designed, which can be seen on the sidebar to the left.
+It is intended to resemble a wrench and a cat at the same time, with a
+retrofuturist vibe to it. I am very happy with how it came out.
+
+A very special thank you to our first client. Your testimony will be published
+on the website soon. A lot of infastructure has been established and the
+production of user systems is significantly faster now.
diff --git a/posts/roadmap.md b/posts/roadmap.md
@@ -0,0 +1,60 @@
+`((title . "Technical Roadmap") (date . "2025-12-19"));`
+I would like to take the time to establish a little roadmap for myself and the
+other technical folks who might be giving this a read.
+
+Now that a lot of general housekeeping has been done for MonasTech, I would like
+to focus on producing new "styles" of systems. Although I really think tiling
+window managers are the way to go, I understand that's not what most people
+want.
+
+I will be designing most of my systems around Wayland instead of X.
+Specifically, I'd like to focus on
+[wlroots](https://gitlab.freedesktop.org/wlroots/wlroots/) compositors for
+reasons that are primarily related to compatibility. The follow compositors are
+the ones I intend to explore and provide solid support for.
+
+Primary:
+- [Sway](https://swaywm.org/)
+ - It's just good. It's what I daily drive.
+- [Labwc](https://labwc.github.io/)
+ - The most "suckless" floating WM in my opinion.
+ - XML-based configuration that will work excellently with Guile Scheme.
+- [Wayfire](https://wayfire.org/)
+ - Seems to be the "other" stable compositor that everyone uses.
+ - Maximalistic effects are very cool.
+
+Secondary:
+- [Niri](https://yalter.github.io/niri/)
+ - I think this could be more approachable to Windows users, but that's just a
+ hunch. Seems like a solid blend between WM-style and floating-style
+ compositors. I like it, but I need to do more experimentation.
+- [Hyprland](https://hypr.land/)
+ - The kiddos seem to like this one. Seems like Sway but with a different
+ ecosystem.
+
+The first order of business is to produce example systems that I can confidently
+dogfood on my own machines. I am putting effort into organizing a very
+lightweight "base" system style that allows for most customization to be done on
+the home environment level. That way you could have several different users with
+completely different configurations on the same machine. It also makes updates a
+lot cleaner, only requiring a relog at the worst.
+
+I'll create more posts once I get something done for each.
+
+On the backend side, there are a few important things that I need to do.
+
+- Create a proper update service
+- Setup a proper build farm with substitutes
+ - Substitutes are already available at `substitutes.monastech.xyz` but it's
+ limited to what I manually choose to build as of right now.
+ - I think setting up a build machine interface for incredibly low-end devices
+ is a good idea.
+- Organize the aformentioned "base" system
+ - This really just means figuring out what is the best platform to build off
+ of. It's looking like it's going to be
+ [greetd](https://sr.ht/~kennylevinsen/greetd/) with something similar to
+ [tuigreet](https://github.com/apognu/tuigreet) because I do not like the
+ idea of running another compositor solely for the login manager. However, I
+ understand that users will be users and they will probably want something
+ pretty like [QtGreet](https://gitlab.com/marcusbritanicus/QtGreet). I'll
+ figure it out.
diff --git a/posts/updated-site.md b/posts/updated-site.md
@@ -0,0 +1,10 @@
+`((title . "New Phone Number + Official Service List") (date . "2025-11-28"));`
+We now have an official toll-free number that you can reach out to!
+
+Give us a call at [1-833-UNPLUG-ME](tel:+18338675846).
+
+Also, there is now an official list of services on the [services
+page](/services.html). This includes price estimates!
+
+I will continue to update the site as time passes. Examples coming soon!
+