You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Opinionated example project for ClojureScript using Boot instead of Leiningen.
Was inspired by chestnut but has grown since to include other stuff to
demonstrate Boot.
This is not an Leiningen template as I don't believe in setting up complex
projects automatically. Instead you should study this project and copy
only stuff you need and understand.
Prerequisites
You should first install Boot. Also you should be running the
latest version.
Features
Uses component and reloaded.repl to provide utilities to start,
stop and reset (reload) the app.
You can add dependency to e.g. bootstrap from webjars to
your regular dependencies and then use @import "bootstrap/less/bootstrap.less"
on your .less files.
*.js, *.css, *.html changes send notification to browser thought WebSocket and browser loads the new files
autotest task to run Clj and Cljs tests whenever files are changed
Uses boot-alt-test to run Clojure tests as fast as possible and
only running the changed tests are file changes
Uses boot-cljs-test to run ClojureScript tests with Doo, allowing the tests
to run in many of JS environments, like browsers, Node or PhantomJS.
Provides package task that creates Uberjar that can be used to run the app on a server
Cljs will be compiled using :advanced optimization and uses minified foreign libraries, like React
Only backend.main is AOT compiled, so that it is
possible to start the application with java -jar saapas.jar but so that
rest of the code is compiled at application startup to avoid problems with AOT
compilation.
Usage
To start everything run:
$ boot dev
boot.user=>
# App should now be running, you can use following commands to restart the app
boot.user=> (stop) ; Stop app
boot.user=> (start) ; Start app
boot.user=> (reset) ; Stop, reload all namespaces, start
If you want a repl where you can execute commands, you can start a nrepl
client which connects to the nrepl server started by the dev task by running
$ boot repl -c
License
To the extent possible under law,
Juho Teperi
has waived all copyright and related or neighboring rights to
Saapas.
This work is published from:
Suomi.
About
Example project for Cljs using Boot instead of Lein. Inspired by Chestnut.