natalie-webbed-site/html/site-info.html
2024-08-19 12:21:37 -07:00

71 lines
3.9 KiB
HTML

<html>
<style>
$[cat style.css]
</style>
<meta name="viewport" content="width=device-width, initial-scale=1">
<body>
$[include html/header.html]
<main>
<section>
<h1>Information about this website</h1>
site-info.html was last modified on $[stat -c %y ./html/site-info.html | head -c 10].<br>
</section>
<section>
<h2>/(.*\.)?natalieee.net/</h2>
<h3>why?</h3>
<p>
I was displeased with my former status of not having a website
</p>
<h3>how?</h3>
<p>
requests to /(.*\.)?natalieee.net/ get routed to nginx, which acts as a proxy for my subdomains.
nginx routes requests requests to /^natalieee.net/ to this webserver, which is named <a href='https://git.natalieee.net/nat/sludge'>sludge</a>.
requests to /.*\.natalieee.net/ are routed according to the /.*\.natalieee.net/ section.
</p>
</section>
<section>
<h2>/^natalieee.net/</h2>
<p>
the root domain of this website, which you are currently observing, is running sludge.
the colors of both the light and dark mode are based off of the colorscheme of my laptop.
</p>
</section>
<section>
<h2>sludge</h2>
<h3>what is a sludge?</h3>
<p>s[ite][k]ludge is my from-scratch webserver. it has features.</p>
<h3>why?</h3>
<p>I dislike "web development". also, I was bored.</p>
<h3>what does sludge do?</h3>
<ul>
<li>send data</li>
<li>receive data</li>
<li>process data</li>
<li>create new data</li>
<li>move data</li>
<li>coerce data[types]</li>
<li>other verbs prepended to data</li>
</ul>
<h3>how does sludge?</h3>
<p>
sludge receives requests for paths. if these paths are in the routing table, it determines what it should respond with. generally, if the path starts with /html/, it will read an html document from the filesystem.
following this, it will locate any instance of "{key}" and replace these instances with a value determined by a function associated to the route being requested in the routing table.
after substituting these values, it will find any instances of the pattern "$[echo \$\[...]]", where ... is a valid bash expression. for each match, it replaces the original matching text with the output of said text executed in bash.
this functions as a static sight generator. an example of this is the headers on this site, which are included via the following expression: "$[echo \$\[include ./html/header.html]]"
</p>
<p>
sludge also has the ability to apply arbitrary edits to outgoing data prior to said data being sent, but after it has been generated. you may observe this <a href='?uwu=true'>here</a>.
</p>
</section>
<section>
<h2>/.*\.natalieee.net/</h2>
<ul>
<li>$[make-link https://git.natalieee.net]: Gitea instance. You may use it if you feel so inclined for some reason. I wouldn't.</li>
<li>$[make-link https://dns.natalieee.net]: Pointless CNAME record to my main domain so that entities using my dns (A number greater than 0!) can put dns.natalieee.net down as their nameserver instead of natalieee.net.</li>
</ul>
</section>
</main>
$[include html/footer.html]
</body>
</html>