Create a small Clojure project that has a runnable entry point, test namespace, REPL-friendly functions, and a simple structure Java engineers can recognize and extend.
Your first Clojure project should be boring in a good way: a predictable folder layout, a namespace you can load, a function you can call from the REPL, and at least one test you can run.
src/ namespace that loads cleanly.test/ namespace that runs quickly.deps.edn or project.clj) that you can extend later.| Project piece | Why it belongs in the first project |
|---|---|
| One pure function | Gives you something easy to call from the REPL and test directly |
One -main entry point |
Shows how Clojure code runs as a JVM application |
| One test namespace | Establishes the testing loop before the codebase grows |
| One dependency file | Makes classpath and dependency changes explicit |
| One README command block | Prevents “how do I run this?” friction for teammates |
Java mental model: treat this as the smallest “Maven archetype” project, but optimized for interactive development.
Once you can create and run a tiny project end-to-end, you can iterate confidently in the later chapters without fighting your tools.