Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Plugins

Ben Griffiths edited this page · 239 revisions

If you’ve created a plugin for Leiningen, please add it here!

Please note that inclusion on this list does not constitute endorsement by the Leiningen maintainers.

Development Tools

  • configleaf Build profiles and access to project.clj at runtime. (see also 'slothcfg', an updated fork)
  • datomic-schema-grapher A library and lein plugin for graphing datomic schemas
  • hiccup-bridge Hiccup to html, html to hiccup
  • lein-4clj An unofficial companion to 4clojure, a Clojure kata site.
  • lein-amp Leiningen plugin for generating Alfresco Module Package (AMP) files.
  • lein-ancient Check your projects and plugins for outdated dependencies.
  • lein-annotations Displays comment annotations in your project.
  • lein-aot-filter Filtering of AOT compiled class files
  • lein-auto Automatically perform a task when source files change
  • lein-autoreload Reload your source in the background while running the repl.
  • lein-bikeshed Notify you if your code is bad
  • lein-cascade Execute cascading task dependencies
  • lein-checkall lein check && lein kibit && lein eastwood && lein bikeshed
  • lein-checkouts Build all dependency "checkouts" projects before the current project is build
  • lein-chromebuild Create chrome extensions from clojurescript
  • lein-clean-m2 Remove all artifacts from local repo not used by current project
  • lein-cooper Foreman style plugin for Leiningen for running long running dev tasks in parallel.
  • lein-cprint Like lein-pprint, but with color.
  • lein-create-template Create Leiningen templates from existing skeleton projects
  • lein-depgraph Generate a namespace dependency graph as an svg file
  • lein-eastwood A Clojure linting tool that inspects Clojure code and reports possible problems.
  • lein-exec Execute Clojure scripts in a project
  • lein-expand-resource-paths Expand glob patterns in :resource-paths to work alongside alternative dependency managers
  • lein-extend-cp Adds paths to the classpath
  • lein-externs Generate externs for your ClojureScript project
  • lein-cljs-externs Generate externs for your Clojurescript project, specified via metadata
  • lein-file-replace Replace text in files with other text, possibly from a project map
  • lein-filegen Generate files from data and a template
  • lein-fore-prob Import problems from 4clojure
  • lein-git-deps Pull dependencies via git
  • lein-git-version Middleware DRYs up versions by substituting version info found in git tags into project map.
  • lein-githooks Manage git hooks in project.clj.
  • lein-gitify Create and initialize Github/git in your new Leiningen projects.
  • lein-grep Improved repository searching built off the search subcommand.
  • lein-hadoop-cluster Run Leiningen tasks with the configuration necessary to access a live Hadoop cluster.
  • lein-hiera Generate namespace dependency graphs from Leiningen projects.
  • lein-idefiles Generate IDE files (Eclipse, IDEA) for Leiningen projects
  • lein-inject Inject vars into convenience namespaces for the REPL.
  • lein-instant-cheatsheet Generate a cheatsheet for your project and dependencies
  • lein-javac-resources Copy resources from :java-source-paths to compile path (hooks into lein javac)
  • lein-jdk-tools Add tools.jar to the classpath
  • lein-jshint static code analysis for JS, based on JSHint
  • lein-jslint static code analysis for JS, based on JSLint
  • lein-kibit static code analysis to find more idiomatic ways to write your Clojure code.
  • lein-libdir Copy dependencies to a 'lib' folder in your project
  • lein-localrepo Work with the local Maven repository
  • lein-maven Support for maven projects in checkouts
  • lein-modules An alternative to Maven multi-module projects
  • lein-nevam Convert Maven pom.xml files to project.clj files
  • lein-notes See inline notes from sources
  • lein-ns-dep-graph Show namespace dependencies of Clojure project sources as a graph
  • lein-oneoff Simplify working with one-off, single-file clojure programs
  • lein-open Open any dependency or installed jar in an editor.
  • lein-parent Inherit properties from a parent project
  • lein-pdo Run lein tasks concurrently in parallel
  • lein-plz Add dependencies to projects quickly
  • lein-resource Copy files and transform using stencil
  • lein-shell Run sub-processes from within Leiningen.
  • lein-sub Execute tasks on sub-projects
  • lein-tarsier Add a VimClojure server to your project
  • lein-teamcity Add an on-the-fly stages, artifacts and tests reporting in TeamCity
  • lein-thrush Feed the return value of one task into the input of another
  • lein-try Try out libraries without creating a dummy project/dependency.
  • lein-ubersource Download the source code for all of the project's (transitive) dependencies.
  • lein-vanity Lines of code statistics for vanity's sake
  • lein-var-file Creates an environment variables file. Works great with environ and useful when running Docker containers.
  • lein-vertx Develop vertx applications in clojure
  • lein-webdav Enables uploading of deployments to webdav repos
  • lein-webrepl A browser based nREPL interface
  • lein-whimrepl Start a REPL session in a Vim-targetable server for use with vim-slime.
  • reloadable-app Leiningen template for a new component based app implementing the reloaded workflow.
  • slothcfg Build profiles and access to project.clj at runtime. Updated fork of 'configleaf'.
  • varspotting Count public Vars meeting certain criteria (holding functions, macros etc.)
  • mranderson Download and use some dependencies as source.
  • gargamel generates pretty (with links etc) changelog based on git commit messages in multiple formats
  • ultra A Leiningen plugin for a superior development environment

Compilers

Testing

  • lein-autoexpect Watch project for changes and automatically run expectations
  • lein-cloverage Generate cloverage coverage reports
  • lein-cucumber Run clojure-based cucumber-jvm specifications
  • org.clojars.punkisdead/lein-cucumber Run clojure-based cucumber-jvm specifications (an up to date fork of the lein-cucumber plugin)
  • lein-difftest Display diffs when a test fails
  • lein-expectations Run Expectations-based tests
  • lein-guzheng Branch coverage analysis usable with any testing framefork
  • lein-junit Run JUnit tests
  • lein-midje Run Midje tests
  • lein-pjotest Run test namespaces in parallel with JUnit XML output
  • lein-play Play a different sound at the end of your test runs depending on whether they pass or fail
  • lein-prism Auto-reload and rerun tests, works with vanilla clojure.test unlike the others mentioned here.
  • lein-test-bang-bang Run each test namespace in a separate JVM
  • lein-test-from Run your test namespaces, starting from a particular namespace
  • lein-test-refresh Watch project for changes and automatically reload namespaces and run clojure.test tests.
  • perforate Painless benchmarking with Leiningen and Criterium
  • quickie Autotest clojure.test files. Filters stacktraces to skip over some of the clojure cruft.
  • speclj (pronounced “speckle”) TDD/BDD framework, with auto-runner, based on rspec
  • test2junit Write test results to JUnit XML format suited for creating HTML reports. Allows automation of report generation as well.
  • parallel-test Run clojure.test tests in parallel with lein test style output. Supports fine grained configuration of what tests are executed in parallel, and how.

Deployment

Web

  • garden-watch Watches for changes in your Garden (edn (CSS)) source files.
  • hiccup-watch Watches for changes in your Hiccup (edn (HTML)) source files.
  • lein-bower Bower web lib dependency management
  • lein-gaeshi Google App Engine webs apps using Joodo.
  • lein-gwt-plugin Runs and compiles GWT applications
  • lein-httpd Start a web server in the current directory.
  • lein-joodo Simple web app library. Tasks to create, test, generate, your code.
  • lein-karma Runs JavaScript tests with Karma
  • lein-misaki Helps you building web sites using the Misaki static site generator
  • lein-protractor Runs AngularJS e2e tests with Protractor
  • lein-ring Work with web applications using Ring
  • lein-s3-static-deploy Deploy a local directory as a static website on s3
  • lein-servlet Work with servlet-based webapps
  • lein-simpleton Serve files via http out of a local directory.
  • touchme Touch files when html (by example) files are modified. Can be used to update enlive templates.
  • lein-sitecompiler The plugin allows generating a static website. Supports many template engines such as Mustache, Hiccup, Cuma, Fleet, Markdown.

Databases

  • clj-sql-up A simple plugin for running SQL database migrations
  • datomic-schema-grapher A library and lein plugin for graphing datomic schemas
  • drift Create and run Rails like database migrations in Clojure
  • lein-dbmaintain DbMaintain integration for Leiningen
  • lein-embongo Create a managed/embedded instance of MongoDB during a lein build (e.g. for integration testing).
  • lein-flyway - Flyway Migration Tool ported to Leiningen
  • lein-ldapimem - Create an embedded instance of unboundID's LDAP service (e.g. for testing)
  • lein-memcached - Create an embedded instance of memcached (useful for testing)
  • lein-postgres Create an embedded instance of postgres for testing and development.
  • lein-tern - DB migrations as Clojure data.
  • zookem Create a embedded instance of Zookeeper during a lein build (e.g. for integration testing)

Documentation

  • cloc Generate API docs for your project and dependencies and serve them through a local web server, with a fast Lucene full-text search.
  • codox A tool for generating API documentation from Clojure source code. (html)
  • lein-asciidoctor Generate documentation using Asciidoctor
  • lein-clique Generate a graph of dependencies between the functions in your project
  • lein-html5-docs Generate HTML5 API docs
  • lein-javadoc Automatically run javadoc on the java sources in your project
  • lein-licenses List licenses of all dependencies
  • lein-margauto Watches your source directories for changes to your clojure source files and rebuilds the Marginalia documentation whenever you update your source code
  • lein-marginalia Generate Marginalia documentation
  • lein-mustache Evaluate Mustache templates with Clojure data files (e.g. for creating templatized documentation)
  • lein-plantuml Generate UML diagrams using PlantUML
  • lein-precate Transform project.clj into Leiningen 2.x-compatible form.
  • lein-sphinx Generate documentation from reStructuredText using Sphinx.
  • nephila Show a graph of your Clojure namespaces
  • gargamel generates pretty (with links etc) changelog based on git commit messages in multiple formats

Deprecated

Merged into Leiningen

  • lein-javac For compiling Java source (1.4+)
  • lein-multi Run tasks against multiple dependency sets (such as multiple Clojure versions) at once (2.0+)
  • lein-newnew Next-generation lein new supporting custom project skeletons (2.0+)
  • lein-plugin Manage plugins (1.4+)
  • lein-retest Run only the test namespaces which failed last time around (1.6+)
  • lein-run Call -main functions from the command-line (1.4+)
  • lein-search Search remote repositories for artifacts (1.6+)
Something went wrong with that request. Please try again.