Compare commits

...

12 Commits

Author SHA1 Message Date
e5d6bc0298 added title to template.html and 404.html 2024-11-01 15:07:16 -07:00
607c6d605d added lang tag to template.html and 404.html 2024-11-01 14:41:17 -07:00
55733a27e9 updated flake 2024-10-21 14:20:20 -07:00
a74c54d63c increased padding on content slightly 2024-09-16 23:28:14 -07:00
3cabd6bb40 increased padding on body 2024-09-16 23:22:37 -07:00
c2e8ab4bbc fixed header css 2024-09-16 23:17:13 -07:00
c508e20157 updated css 2024-09-16 23:14:16 -07:00
e6015b56c2 added service 2024-09-16 23:10:16 -07:00
f0e9060901 updated main.fnl usage 2024-09-16 23:03:07 -07:00
d4fc5ce5ba updated default port 2024-09-16 23:02:15 -07:00
a543d7b52f added about page 2024-09-16 22:58:15 -07:00
e60781069e changed start-server a little 2024-09-16 22:57:49 -07:00
8 changed files with 311 additions and 267 deletions

View File

@ -1,54 +1,53 @@
<!doctype html>
<html>
<head>
<meta charset="UTF-8" />
<style>
:root {
--foreground: #ffffff;
--background: #000000;
--accent-50: #adadad;
}
@media (prefers-color-scheme: light) {
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>404 Not Found</title>
<style>
:root {
--foreground: #000000;
--background: #ffffff;
--foreground: #ffffff;
--background: #000000;
--accent-50: #525252;
--accent-50: #adadad;
}
}
body {
display: flex;
flex-direction: column;
margin: 0;
justify-content: center;
align-items: center;
min-height: 100vh;
}
@media (prefers-color-scheme: light) {
:root {
--foreground: #000000;
--background: #ffffff;
body {
background: var(--background);
font-family: "Roboto", sans-serif;
color: var(--foreground);
--accent-50: #525252;
}
}
h1 {
body {
display: flex;
flex-direction: column;
margin: 0;
justify-content: center;
align-items: center;
min-height: 100vh;
}
h3 {
margin: 0;
color: var(--accent-50);
body {
background: var(--background);
font-family: "Roboto", sans-serif;
color: var(--foreground);
h1 {
margin: 0;
}
h3 {
margin: 0;
color: var(--accent-50);
}
}
}
</style>
</head>
<body>
<h1>404</h1>
<h3>Page Not Found</h3>
</body>
</style>
</head>
<body>
<h1>404</h1>
<h3>Page Not Found</h3>
</body>
</html>

View File

@ -1,7 +1,7 @@
(set _G.port 50625)
(set _G.port 16384)
(set _G.use-http false)
(local usage (: "Usage: %s [-h] [-p] [--use-http]
(local usage (: "Usage: %s [options]
Options:
-h, --help Show this help message and exit

13
bunbun.dev.service Normal file
View File

@ -0,0 +1,13 @@
[Unit]
Description=
After=network.target
[Service]
Type=simple
ExecStart=/home/bunbun/bunbun.dev/start-server -l
WorkingDirectory=/home/bunbun/bunbun.dev
Restart=on-failure
User=bunbun
[Install]
WantedBy=default.target

View File

@ -1,38 +1,40 @@
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, ... } @ inputs:
let
pkgs = nixpkgs.legacyPackages.x86_64-linux;
in
{
devShells.x86_64-linux.default = pkgs.mkShell {
buildInputs = [
(pkgs.lua5_1.withPackages (ps: with ps; [
({ fetchFromGitHub, fetchurl }:
ps.buildLuarocksPackage {
pname = "cmark";
version = "0.30.2-1";
knownRockspec = (fetchurl {
url = "mirror://luarocks/cmark-0.30.2-1.rockspec";
sha256 = "077kvl9xa9yj0fxyyxxw43k9v9dgd5f11ax8hhxj3nx8vfs5rps8";
}).outPath;
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system:
let pkgs = nixpkgs.legacyPackages.${system};
in with pkgs; {
devShells.default = mkShell {
buildInputs = [
(lua5_3.withPackages (ps:
with ps; [
(buildLuarocksPackage {
pname = "cmark";
version = "0.30.2-1";
knownRockspec = (fetchurl {
url = "mirror://luarocks/cmark-0.30.2-1.rockspec";
sha256 =
"077kvl9xa9yj0fxyyxxw43k9v9dgd5f11ax8hhxj3nx8vfs5rps8";
}).outPath;
src = fetchFromGitHub {
owner = "jgm";
repo = "cmark-lua";
rev = "0.30.2";
hash = "sha256-6Bzq0FdyqXXiL6pLDRFbULFJpowF0P6CvAw8iqFXkkQ=";
};
})
luafilesystem
luasocket
luasec
fennel
]))
];
};
};
src = fetchFromGitHub {
owner = "jgm";
repo = "cmark-lua";
rev = "0.30.2";
hash =
"sha256-6Bzq0FdyqXXiL6pLDRFbULFJpowF0P6CvAw8iqFXkkQ=";
};
})
luafilesystem
luasocket
luasec
fennel
]))
];
};
});
}

9
pages/about.md Normal file
View File

@ -0,0 +1,9 @@
### About Me
Hello, I'm Winter. If you're here you probably already know about me, if you don't here's a bit of info...
As I said previously my name is Winter, also known by my pseudonyms, Bunbun, and Brainless Bitch. I use she/her pronouns. I'm a self taught programmer with a passion for [Linux](https://en.wikipedia.org/wiki/Linux), programming, and general audio shenanigans. I work with [C](<https://en.wikipedia.org/wiki/C_(programming_language)>), [Lua](<https://en.wikipedia.org/wiki/Lua_(programming_language)>) and a variety of [Lisp](<https://en.wikipedia.org/wiki/Lisp_(programming_language)>) dialects.
### About the Website
This website is written in [Fennel](https://fennel-lang.org/) a Lisp dialect that compiles into Lua, [Markdown](https://en.wikipedia.org/wiki/Markdown), and a bit of [HTML](https://en.wikipedia.org/wiki/HTML) and [CSS](https://en.wikipedia.org/wiki/CSS).

View File

@ -1,11 +1,11 @@
#!/bin/bash
#!/usr/bin/env bash
command="./main.fnl"
kill_command="pkill -f 'main\.fnl'"
log_file="log"
usage="Usage: start-server [-h] [--localhost] [-l] [--log-file] [-k]
usage="Usage: start-server [options]
Options:
-h, --help Show this help message and exit
@ -34,4 +34,4 @@ for (( i=1; i<=$#; i++ )); do
done
$kill_command
eval "${command} & disown"
eval "${command}"

358
style.css
View File

@ -6,232 +6,248 @@
@import url("https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@100..900&display=swap");
:root {
--serif-font: "Roboto Serif", serif;
--sans-serif-font: "Roboto", sans-serif;
--monospace-font: "Roboto Mono", monospace;
--serif-font: "Roboto Serif", serif;
--sans-serif-font: "Roboto", sans-serif;
--monospace-font: "Roboto Mono", monospace;
--white-10: #ffffff;
--white-20: #ebebeb;
--white-30: #d6d6d6;
--white-40: #c2c2c2;
--white-50: #adadad;
--white-10: #ffffff;
--white-20: #ebebeb;
--white-30: #d6d6d6;
--white-40: #c2c2c2;
--white-50: #adadad;
--black-10: #525252;
--black-20: #3d3d3d;
--black-30: #292929;
--black-40: #141414;
--black-50: #000000;
--black-10: #525252;
--black-20: #3d3d3d;
--black-30: #292929;
--black-40: #141414;
--black-50: #000000;
}
:root {
--foreground: var(--white-10);
--background: var(--black-50);
--foreground: var(--white-10);
--background: var(--black-50);
--accent-10: var(--black-10);
--accent-20: var(--black-20);
--accent-30: var(--black-30);
--accent-40: var(--black-40);
--accent-50: var(--white-50);
--accent-10: var(--black-10);
--accent-20: var(--black-20);
--accent-30: var(--black-30);
--accent-40: var(--black-40);
--accent-50: var(--white-50);
}
@media (prefers-color-scheme: light) {
:root {
--foreground: var(--black-50);
--background: var(--white-10);
:root {
--foreground: var(--black-50);
--background: var(--white-10);
--accent-10: var(--white-50);
--accent-20: var(--white-40);
--accent-30: var(--white-30);
--accent-40: var(--white-20);
--accent-50: var(--black-10);
}
--accent-10: var(--white-50);
--accent-20: var(--white-40);
--accent-30: var(--white-30);
--accent-40: var(--white-20);
--accent-50: var(--black-10);
}
}
body {
display: flex;
flex-direction: column;
box-sizing: border-box;
margin: 0;
background: var(--background);
padding: 1em;
min-height: 100vh;
color: var(--foreground);
font-family: var(--sans-serif-font);
display: flex;
flex-direction: column;
box-sizing: border-box;
margin: 0;
background: var(--background);
padding: 2em;
min-height: 100vh;
color: var(--foreground);
font-family: var(--sans-serif-font);
}
body>header {
position: sticky;
top: 0;
margin-top: -1em;
border-bottom: 0.1em solid var(--accent-50);
background: var(--background);
padding: 0.5em;
display: flex;
position: sticky;
top: 0;
justify-content: space-between;
margin-top: -1em;
border-bottom: 0.1em solid var(--accent-50);
background: var(--background);
padding: 0.5em;
}
body>header>a {
color: var(--foreground);
font-weight: 500;
font-size: 2em;
text-decoration: none;
color: var(--foreground);
font-weight: 500;
font-size: 2em;
text-decoration: none;
&::after {
content: "_";
}
&::after {
content: "_";
}
&:hover::after {
animation: blink 0.5s alternate infinite;
}
&:hover::after {
animation: blink 0.5s alternate infinite;
}
}
@keyframes blink {
to {
opacity: 0;
}
to {
opacity: 0;
}
from {
opacity: 1;
}
from {
opacity: 1;
}
}
body>header>nav {
display: flex;
align-items: center;
}
body>header>nav>a {
color: var(--foreground);
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
body>.content {
flex: 1;
padding: 0.5em;
overflow-y: hidden;
flex: 1;
padding: 1em;
overflow-y: hidden;
}
body>.content>main {
min-width: auto;
min-width: auto;
}
body>.content>main {
min-width: 60ch;
max-width: 120ch;
min-width: 60ch;
max-width: 120ch;
/* paragraphs */
p {
margin: 0;
color: var(--accent-50);
}
/* paragraphs */
p {
margin: 0;
color: var(--accent-50);
}
>p {
margin-block-start: 1em;
margin-block-end: 1em;
}
>p {
margin-block-start: 1em;
margin-block-end: 1em;
}
/* headings */
h1,
h2,
h3,
h4,
h5,
h6 {
margin: 0;
}
/* headings */
h1,
h2,
h3,
h4,
h5,
h6 {
margin: 0;
}
> :is(h1, h2, h3, h4, h5, h6) {
margin-block-start: 1em;
margin-block-end: 1em;
}
> :is(h1, h2, h3, h4, h5, h6) {
margin-block-start: 1em;
margin-block-end: 1em;
}
/* links */
a {
color: var(--foreground);
text-decoration: none;
/* links */
a {
color: var(--foreground);
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
&:hover {
text-decoration: underline;
}
}
/* images */
img {
border-radius: 0.26em;
}
/* images */
img {
border-radius: 0.26em;
}
/* block qutoes */
blockquote {
display: block;
margin: 0;
margin-left: 1em;
margin-block-start: 1em;
border-left: 0.2em solid var(--accent-40);
padding-left: 0.5em;
}
/* block qutoes */
blockquote {
display: block;
margin: 0;
margin-left: 1em;
margin-block-start: 1em;
border-left: 0.2em solid var(--accent-40);
padding-left: 0.5em;
}
/* lists */
ul,
ol {
margin: 0;
padding-left: 2em;
color: var(--accent-50);
/* lists */
ul,
ol {
margin: 0;
padding-left: 2em;
color: var(--accent-50);
li {
margin: 0;
}
li {
margin: 0;
}
li::marker {
color: var(--foreground);
}
}
li::marker {
color: var(--foreground);
}
}
> :is(ul, ol) {
margin-block-start: 1em;
margin-block-end: 1em;
}
> :is(ul, ol) {
margin-block-start: 1em;
margin-block-end: 1em;
}
/* horizontal rule */
hr {
margin: 1em 0;
border: none;
border-bottom: 0.1em solid var(--accent-50);
}
/* horizontal rule */
hr {
margin: 1em 0;
border: none;
border-bottom: 0.1em solid var(--accent-50);
}
/* inline code */
p>code {
display: inline-block;
border-radius: 0.23em;
background: var(--accent-40);
padding: 0.2em;
color: var(--foreground);
font-size: 0.8em;
line-height: 1;
font-family: var(--monospace-font);
}
/* inline code */
p>code {
display: inline-block;
border-radius: 0.23em;
background: var(--accent-40);
padding: 0.2em;
color: var(--foreground);
font-size: 0.8em;
line-height: 1;
font-family: var(--monospace-font);
}
/* code blocks */
pre {
display: block;
margin: 1em 0;
border-radius: 0.26em;
background: var(--accent-40);
padding: 0.8em;
width: fit-content;
overflow: hidden;
}
/* code blocks */
pre {
display: block;
margin: 1em 0;
border-radius: 0.26em;
background: var(--accent-40);
padding: 0.8em;
width: fit-content;
overflow: hidden;
}
pre>code {
font-size: 0.8em;
font-family: var(--monospace-font);
}
pre>code {
font-size: 0.8em;
font-family: var(--monospace-font);
}
}
body>footer {
padding: 0.5em;
color: var(--accent-10);
white-space: nowrap;
padding: 0.5em;
color: var(--accent-10);
white-space: nowrap;
}
body>footer>a {
display: inline-block;
margin: -0.2em 0;
border-radius: 0.23em;
background: #42a5f54d;
padding: 0.2em;
color: #42a5f5;
line-height: 1;
text-decoration: none;
display: inline-block;
margin: -0.2em 0;
border-radius: 0.23em;
background: #42a5f54d;
padding: 0.2em;
color: #42a5f5;
line-height: 1;
text-decoration: none;
&:hover {
text-decoration: underline;
}
&:hover {
text-decoration: underline;
}
}

View File

@ -1,22 +1,27 @@
<!doctype html>
<html>
<head>
<meta charset="UTF-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<header>
<a href="https://bunbun.dev">bunbun.dev</a>
</header>
<div class="content">
<main>%s</main>
</div>
<footer>
&copy; 2024 Winter Hille &mdash;
<a href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.en">BY-NC-SA 4.0</a>
</footer>
</body>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width" />
<link rel="stylesheet" type="text/css" href="style.css" />
<title>bunbun.dev</title>
</head>
<body>
<header>
<a href="https://bunbun.dev">bunbun.dev</a>
<nav>
<a href="https://bunbun.dev/about">About</a>
</nav>
</header>
<div class="content">
<main>%s</main>
</div>
<footer>
&copy; 2024 Winter Hille &mdash;
<a href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.en"
>BY-NC-SA 4.0</a
>
</footer>
</body>
</html>