How to Use Calva with Polylith
Polylith is an architecture for backend projects that maximizes development ergonomics and code reuse.
When developing a Polylith application you use one REPL for everything. And as such it is a rather vanilla deps.edn project, so there is really not much more to using Calva with Polylith than:
- Jack in, selecting the deps.ednproject type
- Select aliases, most often :devand:test
- Hack away!
The RealWorld Example

To make it easy to try Polylith out with Calva, the Polylith RealWorld example implementation has some Calva config to get the server started and Calva connected to its REPL quickly:
- Fork the project and open it in VS Code
- Jack-in, selecting the Polylith RealWorld Server REPLproject type
- Wait for the REPL prompt to read clj꞉dev.server꞉>
- Evaluate (start! 6003)
- Hack away!
Try it with a Frontend
A ClojureScript frontend, of course:
- Fork the jacekschae/conduit project and open it in VS Code
- Edit the api-urldefinition inevents.cljsfile to be(def api-url "http://localhost:6003/api")
- Jack-in, selecting to start and connect to the :appbuild
- Wait for it to compile and then open http://localhost:3000
- Hack away!
