██████╗ ██████╗ █████╗ ██████╗████████╗██╗ ██████╗ █████╗ ██╗ ██╗ ██╗
██╔══██╗██╔══██╗██╔══██╗██╔════╝╚══██╔══╝██║██╔════╝██╔══██╗██║ ██║ ██║
██████╔╝██████╔╝███████║██║ ██║ ██║██║ ███████║██║ ██║ ██║
██╔═══╝ ██╔══██╗██╔══██║██║ ██║ ██║██║ ██╔══██║██║ ██║ ██║
██║ ██║ ██║██║ ██║╚██████╗ ██║ ██║╚██████╗██║ ██║███████╗███████╗██║
╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝╚══════╝╚═╝
A Practical introduction to software development with the Clojure programming language, using Clojure CLI and a wide range of community tools for a REPL focused workflow.
The guide uses Practicalli Clojure CLI Config to provide aliases to run over 30 community tools that complement the workflow, including a REPL Reloaded workflow for a highly interactive and effective development experience.
Learning Clojure syntax and how to think in a functional design is also covered with code examples and challenge that help embed these concepts.
This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License (including images & stylesheets).
Please read the detailed Practicalli contributing page before raising an issue or pull request to avoid disappointment.
By submitting content ideas and corrections you are agreeing they can be used in this workshop under the Creative Commons Attribution ShareAlike 4.0 International license. Attribution will be detailed via GitHub contributors.
All sponsorship funds are used to support the continued development of Practicalli series of books and videos, although most work is done at personal cost and time.
Thanks to my current GitHub sponsors for their continued support
The megalinter GitHub actions will run when a pull request is created,checking basic markdown syntax.
A review of the change will be carried out by the Practicalli team and the PR merged if the change is acceptable.
The Publish Book GitHub action will run when PR's are merged into main (or the Practicalli team pushes changes to the default branch).
Publish book workflow installs Material for MkDocs version 9
Zensical can be installed locally via vu or pip. Practicalli uses uv and installs Zensical as a tool for simplicity.
CLI Commands are wrapped in tasks defined within the Makefile, providing a simpler and consistent user experience.
Zensical - Practcialli Engineering Playbook
Clone the repository and change into the root of the project.
git clone https://github.com/practicalli/learn-clojureInstall Zensical as a tool using uv (updating if there is a new version).
make docs-installOr use the uv command:
uv tool install zensical --with catppuccin-zensical --upgradeBuild the website and serve locally at http://localhost:8000
make docsOr use the zensical command:
zensical serve --dev-addr localhost:7777Specific command if now using make:
Create a virtual python in the root of the project.
uv tool install zensical --upgrade