Skip to content

Practicalli ClojureScriptλ︎

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λ︎

Practicalli Landing page ClojureBridgeLondon

Requirementsλ︎

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.

Need tight integration with npm?

Shadow-Cljs logo shadow-cljs is built with node.js and NPM and so has deep integration with JavaScript packages, an advantage if a project benefits from significant use of node.js packages.

Follow the shadow-cljs documentation carefully and in detail for a smooth experience. 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

Content being refreshed

, 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

Tooling

Community

  • Cljs js - javascript foreigner libraries for ClojureScript

Commercial courses

Creative commons licenseλ︎

Creative Commons License This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License (including images & stylesheets).

Built with Spacemacs


Last update: March 14, 2023