diff options
| author | Jake Zerrer <him@jakezerrer.com> | 2025-11-30 12:31:01 -0500 |
|---|---|---|
| committer | Jake Zerrer <him@jakezerrer.com> | 2025-11-30 17:27:46 -0500 |
| commit | 119cf7f780375187dbe3d064263a9de3a17f538d (patch) | |
| tree | 376d48fc42d19ed49ca3f740e7c0e4c15596d11d /home/src/core.clj | |
| parent | 034e30d70aeac7ce18f34be6a1c211730e9fd7fb (diff) | |
Move from github pages to server
Diffstat (limited to 'home/src/core.clj')
| -rw-r--r-- | home/src/core.clj | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/home/src/core.clj b/home/src/core.clj new file mode 100644 index 0000000..b8ba344 --- /dev/null +++ b/home/src/core.clj @@ -0,0 +1,27 @@ +(ns core + (:require [clojure.java.io :as io] + [pages :refer [pages e-404]])) + +(defn clean [] + (let [target-dir (io/file "target")] + (when (.exists target-dir) + (doseq [file (file-seq target-dir) + :when (.isFile file)] + (io/delete-file file)) + (doseq [dir (reverse (filter #(.isDirectory %) (file-seq target-dir))) + :when (not= dir target-dir)] + (.delete dir))))) + +(defn build [] + (doseq [[path page-fn] (pages)] + (let [target-path (if (= path "/") + "target/html/index.html" + (str "target/html" path "/index.html")) + target-file (io/file target-path)] + (io/make-parents target-file) + (spit target-file (str (page-fn))))) + (spit (io/file "404.html") (str (e-404)))) + +(defn -main [] + (clean) + (build)) |
