Practicalli ClojureScript book banner

ClojureScript is an implementation of the Clojure functional programming language for JavaScript platforms, web browser JavaScript engines and server-side node.js.

Discover the joy of ClojureScript for building single page applications, complex UI's, lightweight services and server side web applications. Design approaches common to ClojureScript & React will be covered along the way.

Projects covered here focus on the Figwheel-main development tool, the reagent library for react.js style applications, hiccup syntax for html content and ClojureScript code.

JavaScript npm packages can be used with Figwheel-main, however, this guide focuses on ClojureScript where ever possible

ClojureScript REPL driven development with Figwheel-main

Example websites


Follow the Practicalli Clojure install instructions to set up a Clojure environment. ClojureScript tools depend on Clojure and Java, although there are self-hosted environments.

A Clojure aware editor is highly recommend along with web browser development tools to provide even greater feedback from the running application.

Built with Spacemacs

Content being refreshed

Many enhancements have happened to ClojureScript since this book was created, especially around shadow-cljs which is not yet covered.

The most relevant content includes the TicTacToe game with ClojureScript, Reagent and Scalable Vector Graphics, the Practicalli ClojureScript YouTube playlist and building ClojureScript websites.

Additional Resources

Learning ClojureScript



  • Cljs js - javascript foreigner libraries for ClojureScript

Commercial courses

In need of tight integration with npm?

Follow the shadow-cljs documentation carefully and in detail if you wish your ClojureScript applications that work hand-in-hand with NPM and Node.js. Ensure the project runs on the command line first, before trying to run the project from an editor. Also check the documentation for specific configuration to ensure your chosen editor will work correctly with shadow-cljs

Creative commons license

Practicalli ClojureScript by Practicalli is licensed under CC BY-SA 4.0

results matching ""

    No results matching ""