Foursquare / spotify mashup with posh / re-frame / datascript
Clojure HTML
Latest commit 99a7daa Nov 28, 2016 @timgilbert Minor clarifications
Permalink
Failed to load latest commit information.
etc/repl Few refinements for building Nov 27, 2016
resources/public Adding netlify redirect/rewrite file Nov 27, 2016
src Adding netlify redirect/rewrite file Nov 27, 2016
test/cljs/haunting_refrain
.gitignore Ignorance is bliss Nov 27, 2016
LICENSE.txt Added MIT license, whoops Nov 27, 2016
README.md Minor clarifications Nov 28, 2016
TODO.md Adding circle badge to readme Nov 27, 2016
circle.yml Ok, fine CircleCI, try it this way Nov 27, 2016
project.clj Minor clarifications Nov 28, 2016

README.md

haunting-refrain

Experiment with datascript + posh + re-frame

CircleCI

Development Mode

Basically, lein repl, (fig), (cljs). I generally connect to the nrepl from IntelliJ, so the sequence looks roughly like this:

lein repl
Loading sidecar...
nREPL server started on port 4444 on host 0.0.0.0 - nrepl://0.0.0.0:4444
[...]
user=> 

Connect an IntelliJ remote nREPL to localhost:4444, or just continue with the terminal.

user=> (fig)
Figwheel: Starting server at http://0.0.0.0:3449
Figwheel: Watching build - dev
Compiling "resources/public/js/compiled/app.js" from ["src/cljs"]...
()
Successfully compiled "resources/public/js/compiled/app.js" in 19.139 seconds.
Figwheel: Starting CSS Watcher for paths  ["resources/public/css"]
nil
user=> (cljs)
Launching ClojureScript REPL for build: dev
[...]

Some time after the above, open your browser to http://localhost:3449/. After it connects you'll get your user=> prompt back, and you should be able to (.alert js/window "Whoopee!") and see the result in your browser.

Run tests:

lein with-profile test doo phantom test

This runs the tests and then watches for chages to files after which it re-runs them. Append once to the end to run the tests a single time.

Production Build

To compile an advanced clojurescript build:

lein clean
lein with-profile prod cljsbuild once min

Deployment

The site is auto-deployed to netlify on commits to master. Run lein release to merge develop to master, then push to trigger a build.