Fast start for a Clojure + Pedestal + Vase + Fern project
Fork this to your project, then fire up a Codespace to get started.
You'll probably want to change "dawn" to your project's name. Be sure to make
the same change in deps.edn, shadow-cljs.edn and the various folder names.
These instructions are for a codespace using VS Code (either in a browser or running locally with a remote connection).
To get a Clojure REPL:
- Configure your .m2/settings.xml for access to download Datomic. (See below for instructions.)
- Click the nREPL badge in the status bar
- Select the "jack in" option
- For project type, select "Clojure CLI"
- Use the
:devalias
To get a CLJS REPL:
- Click the nREPL badge in the status bar.
- Select the "jack in" option
- For project type, select "shadow-cljs"
- Use
:appfor the build to start
Shadow-cljs will run an HTTP server at http://localhost:8020. To access this port, select the "Remote Explorer" tool from the left-hand navigation in your VS Code window. Under "Codespace Details" you will see "Forwarded Ports". Click "Port: 8020" to open a new tab connected to the shadow-cljs server.
To change this port number, modify forwardPorts in
.devcontainer/devcontainer.json and the value at [:builds :app :dev-tools]
in shadow-cljs.edn. After making this change, you must commit it, push it to
your fork of Dawn, and start a new codespace.
- :dev - Start a friendly REPL
- :test - Run all tests
- :app - Build the main application,
Vase depends on Datomic. You will need to set up ~/.clojure/deps.edn and ~/.m2/settings.xml according
to the instructions at my.datomic.com in order to
fetch the Datomic Pro jar file from repo.datomic.com.
Codespaces users will want to look at setting up personal dotfiles to make that easier.
If you do not want to use Datomic, remove both com.cognitect/vase and
com.datomic/datomic-pro from deps.edn.