diff --git a/.editorconfig b/.editorconfig
index a61759e..e9a74eb 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -4,3 +4,6 @@ charset=utf-8
end_of_line=lf
trim_trailing_whitespace=true
insert_final_newline=true
+[Makefile]
+indent_type=tab
+indent_size=1
diff --git a/.hgignore b/.hgignore
index eaced04..98cd3e7 100644
--- a/.hgignore
+++ b/.hgignore
@@ -1,3 +1,4 @@
\#*
.\#*
-src/_tape/titlelookup
+titlelookup
+out/
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..70d1d3c
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,19 @@
+FILES != find -name '*.txti' -o -name '*.org' -o -name '*.md'
+all: build
+.PHONY: list
+list:
+ @echo $(FILES)
+out:
+ mkdir out
+.PHONY: clean
+clean:
+ rm -r out
+%.html: %.org
+ org-ruby $< > $@
+%.html: %.txti
+ redcloth $< > $@
+.PHONY: build
+build: $(FILES)
+.PHONY: push
+push: build
+ rclone sync -v out/ neo:/
diff --git a/src/dnd/minions.org b/dnd/minions.org
similarity index 100%
rename from src/dnd/minions.org
rename to dnd/minions.org
diff --git a/src/dnd/template.org b/dnd/template.org
similarity index 100%
rename from src/dnd/template.org
rename to dnd/template.org
diff --git a/src/dnd/villains.org b/dnd/villains.org
similarity index 100%
rename from src/dnd/villains.org
rename to dnd/villains.org
diff --git a/src/dnd/xaviard.org b/dnd/xaviard.org
similarity index 100%
rename from src/dnd/xaviard.org
rename to dnd/xaviard.org
diff --git a/src/_tape/gensmap.sh b/gensmap.sh
similarity index 100%
rename from src/_tape/gensmap.sh
rename to gensmap.sh
diff --git a/index.html b/index.html
deleted file mode 100644
index 0d39847..0000000
--- a/index.html
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
-Atlas48's Archives
-
-
-
-Welcome to the Atlas48 Archives!
-
-Everything’s slowly being set up and the like, so you’ll only be able to access here unless you know the layout.
-I may make a sitemap, I may not. Just getting the infastructure set up.
-TODO
-
-- find a way to render the org-mode files
-- maybe make an automated sitemap renderer?
-
-
-
diff --git a/src/index.txti b/index.txti
similarity index 100%
rename from src/index.txti
rename to index.txti
diff --git a/src/_tape/lib.m4 b/lib.m4
similarity index 100%
rename from src/_tape/lib.m4
rename to lib.m4
diff --git a/src/_tape/main.html.m4 b/main.html.m4
similarity index 100%
rename from src/_tape/main.html.m4
rename to main.html.m4
diff --git a/src/_tape/push.sh b/push.sh
similarity index 100%
rename from src/_tape/push.sh
rename to push.sh
diff --git a/src/_tape/render.sh b/render.sh
similarity index 100%
rename from src/_tape/render.sh
rename to render.sh
diff --git a/sitemap.xml b/sitemap.xml
deleted file mode 100644
index 96dc635..0000000
--- a/sitemap.xml
+++ /dev/null
@@ -1,159 +0,0 @@
-
-
-
-https://atlas48.neocities.org/dnd
-2023-52-01
-
-
-https://atlas48.neocities.org/dnd/minions.org
-2023-43-01
-
-
-https://atlas48.neocities.org/dnd/template.org
-2023-43-01
-
-
-https://atlas48.neocities.org/dnd/xaviard.html
-2023-54-01
-
-
-https://atlas48.neocities.org/dnd/villains.html
-2023-54-01
-
-
-https://atlas48.neocities.org/dnd/villains.org
-2023-43-01
-
-
-https://atlas48.neocities.org/dnd/template.html
-2023-54-01
-
-
-https://atlas48.neocities.org/dnd/minions.html
-2023-53-01
-
-
-https://atlas48.neocities.org/dnd/xaviard.org
-2023-43-01
-
-
-https://atlas48.neocities.org/img
-2022-49-25
-
-
-https://atlas48.neocities.org/img/av.png
-2021-00-07
-
-
-https://atlas48.neocities.org/img/ucbanner.gif
-2021-01-07
-
-
-https://atlas48.neocities.org/index.html
-2023-54-01
-
-
-https://atlas48.neocities.org/index.txti
-2023-43-01
-
-
-https://atlas48.neocities.org/js
-2022-14-24
-
-
-https://atlas48.neocities.org/neocities.png
-2021-36-20
-
-
-https://atlas48.neocities.org/not_found.html
-2023-53-01
-
-
-https://atlas48.neocities.org/not_found.txti
-2023-43-01
-
-
-https://atlas48.neocities.org/robots.txt
-2022-42-04
-
-
-https://atlas48.neocities.org/sitemap.xml
-2023-56-01
-
-
-https://atlas48.neocities.org/src
-2023-27-22
-
-
-https://atlas48.neocities.org/src/not_found.txti
-2022-36-24
-
-
-https://atlas48.neocities.org/src/dnd
-2023-39-22
-
-
-https://atlas48.neocities.org/src/dnd/minions.org
-2022-12-15
-
-
-https://atlas48.neocities.org/src/dnd/template.org
-2022-01-15
-
-
-https://atlas48.neocities.org/src/dnd/villains.org
-2022-12-15
-
-
-https://atlas48.neocities.org/src/dnd/xaviard.org
-2022-02-15
-
-
-https://atlas48.neocities.org/src/index.txti
-2022-06-15
-
-
-https://atlas48.neocities.org/src/_tape
-2023-56-01
-
-
-https://atlas48.neocities.org/src/_tape/.editorconfig
-2023-46-21
-
-
-https://atlas48.neocities.org/src/_tape/render.sh
-2023-53-01
-
-
-https://atlas48.neocities.org/src/_tape/main.html.m4
-2023-18-01
-
-
-https://atlas48.neocities.org/src/_tape/push.sh
-2023-50-21
-
-
-https://atlas48.neocities.org/src/_tape/titlelookup
-2023-33-22
-
-
-https://atlas48.neocities.org/src/_tape/titlelookup.rs
-2023-33-22
-
-
-https://atlas48.neocities.org/src/_tape/lib.m4
-2023-12-21
-
-
-https://atlas48.neocities.org/src/_tape/gensmap.sh
-2023-56-01
-
-
-https://atlas48.neocities.org/src/_tape/string.sh
-2023-18-01
-
-
-https://atlas48.neocities.org/style.css
-2022-39-04
-
-
diff --git a/src/_tape/.editorconfig b/src/_tape/.editorconfig
deleted file mode 100644
index 4519085..0000000
--- a/src/_tape/.editorconfig
+++ /dev/null
@@ -1,4 +0,0 @@
-root=false
-[*.pl]
-indent_type=space
-indent_size=1
diff --git a/src/_tape/rcss.sh b/src/_tape/rcss.sh
deleted file mode 100755
index aaa229b..0000000
--- a/src/_tape/rcss.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/usr/bin/bash
-for i in $@; do
- echo $i
- sassc $i ../${i%.*}
-done
diff --git a/src/not_found.txti b/src/not_found.txti
deleted file mode 100644
index 39a8719..0000000
--- a/src/not_found.txti
+++ /dev/null
@@ -1,11 +0,0 @@
-"Home":https://atlas48.neocities.org// "Blog":https://atlas48.sdf.org/
-
-
-
-h1. 404
-
-*Page not found.*
-
-The requested page could not be found.
-
-
diff --git a/src/_tape/titlelookup.rs b/titlelookup.rs
similarity index 100%
rename from src/_tape/titlelookup.rs
rename to titlelookup.rs