diff --git a/Caddyfile b/Caddyfile
index 55116fd..fdccd63 100644
--- a/Caddyfile
+++ b/Caddyfile
@@ -3,6 +3,12 @@
# acme_ca https://acme-staging-v02.api.letsencrypt.org/directory
# }
+yaoi.dog {
+ root * /srv/home
+ file_server
+ encode zstd
+}
+
post.atom.town {
reverse_proxy stalwart:8080
}
diff --git a/docker-compose.yml b/docker-compose.yml
index 63f3e03..ef9a3d4 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -9,6 +9,7 @@ services:
- "443:443/udp"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro,z
+ - ./home:/srv/home/
- caddy-data:/data
- caddy-config:/config
networks:
diff --git a/home/clouds_test.png b/home/clouds_test.png
new file mode 100644
index 0000000..fdbe445
Binary files /dev/null and b/home/clouds_test.png differ
diff --git a/home/index.html b/home/index.html
new file mode 100644
index 0000000..6438f0a
--- /dev/null
+++ b/home/index.html
@@ -0,0 +1,20 @@
+
+
+
+
+ atom.town
+
+
+
+
+
+
+
+
hello, and welcome to atom.town. here, you will be at home.
+
+
+
+
diff --git a/home/reset.css b/home/reset.css
new file mode 100644
index 0000000..7117dcc
--- /dev/null
+++ b/home/reset.css
@@ -0,0 +1,44 @@
+/* CSS reset (https://www.joshwcomeau.com/css/custom-css-reset) */
+*, *::before, *::after {
+ box-sizing: border-box;
+}
+
+*:not(dialog) {
+ margin: 0;
+}
+
+@media (prefers-reduced-motion: no-preference) {
+ html {
+ interpolate-size: allow-keywords;
+ }
+}
+
+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;
+}
+/* CSS reset */
diff --git a/home/style.css b/home/style.css
new file mode 100644
index 0000000..bfb64cc
--- /dev/null
+++ b/home/style.css
@@ -0,0 +1,53 @@
+body {
+ height: 100vh;
+ background: url("clouds_test.png"), linear-gradient(180deg, hwb(224 30% 0%) 0%, hwb(226 90% 0%) 100%);
+ background-repeat: no-repeat;
+ background-size: cover, cover;
+ padding: 20px;
+}
+
+* {
+ font-family: Inter, sans-serif;
+ color: white
+}
+
+p, a {
+ font-size: 20px;
+ @media (max-width: 1024px) {
+ font-size: 30px
+ }
+ font-style: italic;
+}
+
+p {
+ font-weight: 300;
+}
+
+a {
+ font-weight: 400;
+}
+
+.flex {
+ display: flex;
+ width: fit-content;
+}
+
+.flex-col {
+ flex-direction: column;
+}
+
+:root { --space: 4px }
+.gap-1 { gap: calc(var(--space) * 1); }
+.gap-2 { gap: calc(var(--space) * 2); }
+.gap-3 { gap: calc(var(--space) * 3); }
+.gap-4 { gap: calc(var(--space) * 4); }
+
+.pop {
+ display: inline-block;
+ transform-origin: left center;
+ transition: transform 0.1s ease;
+}
+
+.pop:hover {
+ transform: scale(1.25);
+}