diff options
| author | eltrac <hi@eltr.ac> | 2026-03-01 14:50:57 +0800 |
|---|---|---|
| committer | eltrac <hi@eltr.ac> | 2026-03-01 14:50:57 +0800 |
| commit | 94d650f0717731d70baa44534e79872cf66cf0dd (patch) | |
| tree | 0439d544beecce02a4683d7ae90fbeea3962efaf /src | |
| parent | 34f56e7facc5b09d2fcdf986104cf350c91f5c55 (diff) | |
chore: add configuration
Diffstat (limited to 'src')
| -rw-r--r-- | src/weepinbell/config.clj | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/weepinbell/config.clj b/src/weepinbell/config.clj new file mode 100644 index 0000000..9fd2827 --- /dev/null +++ b/src/weepinbell/config.clj @@ -0,0 +1,17 @@ +(ns weepinbell.config + (:require [clojure.edn :as edn] + [clojure.java.io :as io])) + +(defn load-config + (let [default-config (when-let [resource (io/resource "config.edn")] + (-> resource slurp edn/read-string)) + external-file (io/file "config/config.edn") + external-config (when (.exists external-file) + (-> external-file slurp edn/read-string))] + (merge default-config external-config))) + +(def config (delay (load-config))) + +(defn get-config [key & keys] + (get-in @config (cons key keys))) + |
