A Gradle plugin providing Clojure and ClojureScript language support for building polyglot and multi-project applications.
Clojurephant is a Gradle plugin that provides first-class support for building projects using Clojure and ClojureScript. It enables developers to compile, test, package, and run Clojure/ClojureScript code within the Gradle ecosystem, solving the problem of integrating these languages into polyglot or multi-module Gradle builds.
Clojure and ClojureScript developers who use or want to use Gradle for their build system, especially those working on polyglot projects or multi-project builds.
Developers choose Clojurephant because it combines the familiar developer experience of Clojure tools like Leiningen with Gradle's powerful features for dependency management, plugin ecosystem, and support for complex build scenarios.
Clojure and Clojurescript support for Gradle
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Fully integrates Clojure and ClojureScript into Gradle, enabling polyglot projects and access to Gradle's extensive plugin ecosystem, as highlighted in the README's philosophy.
Supports packaging Clojure code into JARs, including Uberjars via the Shadow plugin, and handles ClojureScript compilation and packaging for multiple builds.
Integrates clojure.test tests into Gradle's standard Test task, allowing automated testing and CI/CD compatibility without extra setup.
Starts an nREPL server with configurable middlewares, essential for interactive development and debugging in Clojure projects.
The README explicitly warns that minor versions may contain breaking changes until 1.0.0, making it risky for production use or long-term projects.
ClojureScript support is noted as 'pretty new' in the README, indicating potential bugs, limited functionality, and less community testing.
Assumes a specific file-namespace correspondence without parsing ns forms, which may not fit all coding conventions or legacy projects.
Requires additional dependencies like jovial for test integration and the Shadow plugin for Uberjars, adding complexity compared to simpler tools.
clojurephant is an open-source alternative to the following products: