FREEDOM251

Freedom251 › Code Transpilers

ClojureScript

Free plan LinuxMacSelf-hostedWebWindows

Visit ClojureScript Alternatives Pricing

ClojureScript's own site

What ClojureScript is

ClojureScript is a compiler that translates Clojure into JavaScript for client and embedded application development wherever JavaScript runs. It brings Clojure data structures, functional programming, macros, its reader, destructuring, and polymorphism constructs into JavaScript environments. The output works with Google Closure Compiler advanced compilation, which can minify code and remove dead code. Interactive REPLs support development and testing in a browser or Node.js. Browser output is the default in the quick start; selecting the Node.js target produces Node.js output. ClojureScript can include ClojureScript and JavaScript dependencies, and the quick start demonstrates React. Listed build tools include shadow-cljs, Figwheel, Leiningen, and lein-cljsbuild. Editor resources cover Cursive, Emacs, VS Code, Light Table, Sublime Text, Vim, and Atom. Documentation covers compiler and REPL options, dependencies, advanced compilation, source maps, and JavaScript module support marked Alpha. It is free and open source under the Eclipse Public License 1.0, with CLI and API access. Listed platforms include Linux, macOS, Windows, web, and self-hosted environments.

Who it suits

ClojureScript suits developers who want to use Clojure for applications targeting JavaScript environments. Its REPLs and listed build and editor resources may suit developers who prefer interactive development and a choice of tools.

What it does well

  • Compiles Clojure to JavaScript.
  • Supports interactive REPL work in browsers and Node.js.
  • Output works with Closure Compiler advanced compilation.
  • Supports ClojureScript and JavaScript dependencies.
  • Free and open source under the Eclipse Public License 1.0.

What to know first

  • The Windows quick start requires Java 21 and the standalone ClojureScript JAR.
  • The documented Node.js support applies to stable versions at or above 0.12.X.
  • JavaScript module support is marked Alpha.

Limits

The free plan has no stated quota. The quick-start prerequisites differ by platform, and JavaScript module support is marked Alpha.

Plans

PlanBilled and limitsPrice
ClojureScriptOpen source software · Eclipse Public License 1.0Free

As clojurescript.org lists them, read 3 Oct 2026. The maker's own page has the final word.

Getting started

  1. Visit the ClojureScript website and consult its quick start.
  2. On macOS or Linux, prepare a browser and Clojure for the main tutorial.
  3. On Windows, prepare Java 21 and the standalone ClojureScript JAR.
  4. Choose the browser output default or select the Node.js target.
  5. Use the listed build-tool and editor resources to choose a development setup.

ClojureScript is a compiler that turns Clojure into JavaScript for browser and Node.js applications. It suits developers who want Clojure’s language features in places JavaScript runs, especially those who value an interactive workflow. Its main trade-off is adopting Clojure and meeting the setup requirements for the target platform.

Overview

Founded in 2011, ClojureScript brings Clojure to client and embedded application development through JavaScript output. The Eclipse Public License 1.0 covers its use and distribution, and its free price makes it accessible without a paid tier. This is a language choice as much as a compiler choice: it is most compelling for teams seeking Clojure’s programming model, not those who simply want to transform JavaScript with minimal workflow change.

The quick start produces browser output by default and supports Node.js output when that target is selected. REPLs support interactive development and testing in either a browser or Node.js, a useful advantage for developers who prefer to explore and refine code incrementally. Source-mapped stack traces point to ClojureScript source locations, helping keep debugging tied to the code being maintained.

Key features

Clojure constructs and JavaScript interoperation

ClojureScript brings rich data structures, functional programming, macros, the reader, destructuring, and polymorphism constructs to JavaScript environments. That is a substantial reason to choose it when those language tools matter across client or embedded applications. It also supports ClojureScript and JavaScript dependencies, and the quick start demonstrates React use, so the choice does not require excluding JavaScript packages from the application.

Compilation and development workflow

Its JavaScript output is compatible with Google Closure Compiler advanced compilation, which can minify output and remove dead code. That gives projects a path to optimization through Closure Compiler, though it also means teams should be comfortable with the associated compilation approach rather than assuming a JavaScript-native toolchain. Build tools include shadow-cljs, Figwheel, Leiningen, and lein-cljsbuild; editor resources cover Cursive, Emacs, VS Code, Light Table, Sublime Text, Vim, and Atom.

Documentation and setup

API and reference documentation cover compiler and REPL options, dependency handling, advanced compilation, source maps, and JavaScript modules. Module support is marked Alpha, so teams depending on that capability should account for its early status. Setup differs by platform: the main macOS and Linux tutorial specifies a browser and Clojure, while the Windows instructions require Java 21 and the standalone ClojureScript JAR. The quick start describes stable Node.js versions at or above 0.12.X as supported at the time of that page; readers should check whether that guidance fits their intended environment.

Pricing

ClojureScript: free. The plan is open-source software under the Eclipse Public License 1.0, with CLI and API access. There are no paid tiers or plan-based quotas in the stated terms. It is a straightforward fit for individual developers and teams willing to work within the project’s language and setup requirements; the free price does not remove the learning and environment choices involved.

Platforms

ClojureScript covers Linux, macOS, Windows, self-hosted use, and web environments. Browser output is the default in the quick start, with Node.js available as a selected target. Platform support does not mean identical setup: the documented prerequisites differ between the main macOS/Linux path and Windows.

Who it's for

ClojureScript is best for developers and teams who want Clojure’s data-oriented, functional language features for client or embedded applications that run where JavaScript does. REPL support and source-mapped traces strengthen its appeal to people who prefer interactive development and debugging tied to source code. It is a weaker fit for teams seeking a JavaScript-first workflow or who do not want to adopt Clojure and its platform-specific prerequisites.

Pros and cons

  • Pro: Clojure’s data structures and language constructs are available for JavaScript targets, making it a focused option for Clojure-oriented client and embedded work.
  • Pro: Browser and Node.js REPL support enables interactive development and testing across both targets.
  • Pro: Closure Compiler advanced compilation compatibility supports minification and dead-code elimination.
  • Con: Setup requirements vary by platform, with Java 21 and a standalone JAR specified for Windows.
  • Con: JavaScript module support is marked Alpha, which makes it a less settled basis for projects that depend on that feature.
  • Con: Choosing it means taking on Clojure rather than keeping a JavaScript-native language workflow.

Alternatives

Browse Code Transpilers to compare other tools in the category. Choose SWC instead if a free Rust-based developer toolchain and its Android, API, Linux, macOS, web, and Windows coverage better match your needs. Transcrypt is another free, open-source option under Apache 2.0 for Linux, macOS, self-hosted, web, and Windows environments. Babel may suit readers who want a free option with API and Linux, macOS, web, and Windows coverage and no stated paid tiers or usage limits.

Google Web Toolkit is a free, open-source alternative under Apache 2.0. Kotlin/JS is worth considering if a Kotlin compiler target for JavaScript configured through the Kotlin Multiplatform Gradle plugin is a better fit. Opal offers a free option for Linux, macOS, web, and Windows, while Scala.js is a free Scala-to-JavaScript compiler managed through a Scala build tool. Cython is a free alternative for Linux, macOS, and Windows, licensed under Apache 2.0.

Verdict

Choose ClojureScript when you want Clojure’s language features in browser or Node.js applications and value REPL-based development, source-mapped traces, and Closure Compiler compatibility. Its free, open-source plan removes a purchase decision, but the real commitment is adopting Clojure and fitting the platform prerequisites to your project. Look elsewhere if your priority is a JavaScript-first toolchain or you need JavaScript module support to be beyond Alpha.

Verdict

ClojureScript brings Clojure features and interactive development to JavaScript targets, with output that can use Closure Compiler advanced compilation. Review the documented setup requirements and the Alpha status of JavaScript module support before choosing it.

Questions

How much does ClojureScript cost?

It is listed as free plan.

What license covers ClojureScript?

Use and distribution are covered by the Eclipse Public License 1.0.

What does ClojureScript compile?

It compiles Clojure into JavaScript.

Can it target Node.js as well as browsers?

Yes. Browser output is the quick-start default, and selecting the Node.js target produces Node.js output.

What are the quick-start prerequisites?

The main macOS and Linux tutorial specifies a browser and Clojure. The Windows instructions specify Java 21 and the standalone ClojureScript JAR.

Which build tools are listed?

The maker lists shadow-cljs, Figwheel, Leiningen, and lein-cljsbuild.

Facts from ClojureScript's own pages

Build ecosystem
The maker’s tools page lists shadow-cljs, Figwheel, Leiningen, and lein-cljsbuild as build tools. · clojurescript.org, 3 Oct 2026
Debugging
The quick start says source mapped stack traces point to ClojureScript source locations instead of JavaScript locations. · clojurescript.org, 3 Oct 2026
Development prerequisites
The quick start specifies a browser and Clojure for its main macOS/Linux tutorial, and Java 21 plus the standalone ClojureScript JAR on Windows. · clojurescript.org, 3 Oct 2026
Documentation
The maker provides API and reference documentation, including compiler options, REPL options, dependency handling, advanced compilation, source maps, and JavaScript module support marked Alpha. · clojurescript.org, 3 Oct 2026
Editor ecosystem
The tools page lists editor support resources for Cursive, Emacs, VS Code, Light Table, Sublime Text, Vim, and Atom. · clojurescript.org, 3 Oct 2026
Founded
2011 · clojurescript.org, 28 Sept 2026
Intended use
The rationale describes ClojureScript as a way to use Clojure for client and embedded application development wherever JavaScript reaches. · clojurescript.org, 3 Oct 2026
Interactive development
The compiler supports REPLs for interactive development and testing in a browser or Node.js. · clojurescript.org, 3 Oct 2026
JavaScript dependencies
ClojureScript supports including ClojureScript and JavaScript dependencies, and its quick start demonstrates using React. · clojurescript.org, 3 Oct 2026
Language features
It brings Clojure’s rich data structures, functional programming, macros, reader, destructuring, and polymorphism constructs to JavaScript environments. · clojurescript.org, 3 Oct 2026
License
Use and distribution are covered by the Eclipse Public License 1.0. · clojurescript.org, 3 Oct 2026
Node.js version
The quick start says that only stable Node.js versions at or above 0.12.X are supported at the time described on that page. · clojurescript.org, 3 Oct 2026
Optimization
Its JavaScript output is compatible with Google Closure Compiler advanced compilation, which can minify output and eliminate dead code. · clojurescript.org, 3 Oct 2026
Runtime targets
The quick start describes browser output by default and Node.js output when the node target is selected. · clojurescript.org, 3 Oct 2026
What it does
ClojureScript is a compiler for Clojure that emits JavaScript. · clojurescript.org, 3 Oct 2026

Where ClojureScript stands on Freedom251

Look at these too