summaryrefslogtreecommitdiff
path: root/dev/user.clj
blob: 4774756d8b12c59255ea1246b8135777a33e4db8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
(ns user
  (:require [clj-reload.core :as reload]
            [nextjournal.beholder :as beholder]
            [weepinbell.config :refer [load-config]]
            [weepinbell.core]))

(reload/init
 {:dirs ["src" "dev" "test"]})

(defonce stop-fn (atom nil))

(defn start []
  {:pre [(nil? @stop-fn)]}
  (reset! stop-fn 
          (@(resolve 'weepinbell.core/start-system)
           (load-config "config.edn"))))

(defn stop []
  {:pre [(fn? @stop-fn)]}
  (@stop-fn)
  (reset! stop-fn nil))

(defn restart []
  (stop)
  (reload/reload)
  (start))

(defn watch []
  (beholder/watch (fn [_] ((requiring-resolve 'user/restart))) "src"))