view: reagent (react interface)
rx / state: re-frame
development environment: figwheel
ci: drone 
 definitely use parinfer for clojure development. it makes paren/bracket management truly painless...fun even. available for atom, sublime, vim, etc.
 NOTE any time
.drone.yml is changed (even a comment), a new version of
.drone.sec must be generated. see comment in .drone.yml for more info.
- drone cli tools 
 docker will eventually be the only dependency
 if on mac/windows, you will need to use docker machine / virtual box then source the
daemon connection using
eval $(docker-machine env default)
 java 7 probably works too, although that doesn't really matter given 
 drone cli tools allow for simulating a drone build though its
exec subcommand. can be run with
make build, then you can just open index.html in a web browser.
make help to see available commands
dev build w/ live reloading
figwheel will automatically push cljs and css changes to the browser, as well as run tests (to be configured).
wait a bit, then browse to http://localhost:3449
requires filewatcher, see above.
watches sass files, then uses sassc in an ephemeral docker container to rebuild when a file changes. also builds sourcemaps.
# npm install -g phantomjs-prebuilt make test # execute tests once and exit make test-watch # execute tests on file changes
the above command assumes that you have phantomjs installed. however, please note that doo can be configured to run cljs.test in many other js environments (phantom, chrome, ie, safari, opera, slimer, node, rhino, or nashorn).
this will simulate a drone build locally through
drone exec. js will be optimized,
so it takes a while.
removes compiled css, js, java class files, etc