Just an app skeleton with Re-frame, Shadow CLJS, and Semantic UI React.
- Install karma-cli (test runner):
yarn global add karma-cli
- Download project dependencies:
lein deps && yarn install
Start a temporary local web server, build the app with the dev
profile, and serve the app with
hot reload:
lein dev
Please be patient; it may take over 20 seconds to see any output, and over 40 seconds to complete.
When [:app] Build completed
appears in the output, browse to
http://localhost:8280/.
shadow-cljs
will automatically push ClojureScript code
changes to your browser on save. To prevent a few common issues, see
Hot Reload in ClojureScript: Things to avoid.
Opening the app in your browser starts a ClojureScript browser REPL, to which you may now connect.
Build the app with the prod
profile, start a temporary local web server, launch headless
Chrome/Chromium, run tests, and stop the web server:
lein karma
Please be patient; it may take over 15 seconds to see any output, and over 25 seconds to complete.
Build the app with the prod
profile:
lein prod
Please be patient; it may take over 15 seconds to see any output, and over 30 seconds to complete.
The resources/public/js/compiled
directory is created, containing the compiled app.js
and
manifest.edn
files.
The resources/public
directory contains the complete, production web front
end of your app.
Always inspect the resources/public/js/compiled
directory prior to deploying the app. Running any
lein
alias in this project after lein dev
will, at the very least, run lein clean
, which
deletes this generated directory. Further, running lein dev
will generate many, much larger
development versions of the files in this directory.