Free Open Source Clojure Tools

Gaiwan grew out of Lambda Island, which still hosts tons of great educational videos on Clojure and ClojureScript, and we still publish our open source tools under Lambda Island on Github.

Here are the greatest hits from our 136 repos:

πŸ§ͺ Testing & Quality Assurance

  • Kaocha (821β˜…): A feature-rich, extensible test runner for Clojure.
  • Kaocha-Cucumber: Adds support for Cucumber-style BDD tests using Gherkin.
  • Chui (66β˜…): A ClojureScript test runner with a browser UI.
  • Kaocha-JUnit-XML (14β˜…): Generates JUnit XML reports from Kaocha.
  • Kaocha-CLJS2: Run ClojureScript tests with Kaocha. New and improved.
  • Deep-Diff2: Human-readable deep comparison of Clojure data structures.

🧰 Developer Tools & Utilities

  • Launchpad (100β˜…): A REPL launcher for Clojure/nREPL.
  • CLI (30β˜…): Argument parser with subcommand support.
  • Config (26β˜…): Config library supporting EDN, env vars, etc.
  • Ornament (131β˜…): Handle styling in large Clojure or ClojureScript web projects.
  • Plenish: Restock your warehouse. Sync Datomic to a RDBMS.
  • Funnel: Transit-over-WebSocket Message Relay.

🧱 Core Libraries & Utilities

  • Regal (333β˜…): Composable regular expressions in Clojure.
  • URI: RFC-compliant URI handling in Clojure(Script).
  • Faker: Fake data generation for UI testing.
  • Hiccup (32β˜…): Enlive-backed Hiccup implementation (clj-only).
  • Ansi: Parse ANSI color codes, optionally convert to Hiccup.
  • GlΓΆgi: Structured logging for ClojureScript.

🌐 Web & Frontend Development

  • Webbing (3β˜…): Toolkit for web apps in Clojure.
  • Embedkit: Embeds Metabase dashboards in apps.
  • Ornament (131β˜…): CSS-in-Clj(s).

πŸ§ͺ Project Templates & Starters

  • New-Project: Template for starting new Clojure projects.

🌟 Praise from our users

Profile photo of Teodor Lunaas Heggelund
I realized how much I enjoy using tools like Koacha and Launchpad β€” they work so well, and have solved real problems I had when getting started with Clojure, struggling with the REPL, struggling with tests, and especially getting a nice REPL driven workflow where one can leverage parts.

I expect to be using lambdaisland/cli the next time I'm doing CLI parsing, completino is amazing, and I want to try lambdaisland/plenish to build statistics on Datomic data.

The tooling just feels so good to use, and I feel like I learn more about Clojure and Unix by using it. – Teodor Lunaas Heggelund

We're thinking of combining many of these tools into a framework. What would be most valuable for you in this framework? Get in touch and let us know!

Note: Star counts are as of May 23, 2025.