Overview
What is Leiningen?
Leiningen is a build automation and dependency management tool specifically designed for Clojure projects. According to the vendor, it aims to simplify the process of setting up, configuring, and running Clojure projects by providing a unified interface for common development tasks. The product is suitable...
Pricing
Entry-level set up fee?
- No setup fee
Offerings
- Free Trial
- Free/Freemium Version
- Premium Consulting/Integration Services
Would you like us to let the vendor know that you want pricing?
Alternatives Pricing
Product Demos
Om Demo & Beginner's Corner: Using Leiningen and the REPL with the Austin Clojure Meetup
Product Details
- About
- Tech Details
What is Leiningen?
Leiningen is a build automation and dependency management tool specifically designed for Clojure projects. According to the vendor, it aims to simplify the process of setting up, configuring, and running Clojure projects by providing a unified interface for common development tasks. The product is suitable for companies of all sizes, from small startups to large enterprises. It is widely used by professionals in the software development, web development, data science, artificial intelligence, and financial technology industries.
Key Features
Build Automation: Leiningen offers robust build automation capabilities for Clojure projects, empowering developers to define and manage complex build processes, including source code compilation, test execution, artifact packaging, and application deployment.
Dependency Management: Leiningen simplifies the management of project dependencies by providing a declarative approach to specify required libraries and their versions. It automatically resolves and downloads dependencies from repositories, ensuring successful compilation and execution of the project.
Task Execution: Leiningen allows developers to define and execute custom tasks from the command line. These tasks can encompass a wide range of actions, such as running tests, generating documentation, deploying applications, or performing other project-specific operations.
Project Templating: Leiningen facilitates the rapid creation of new Clojure projects by offering project templating capabilities. Developers can swiftly generate projects with pre-configured structures, dependencies, and build configurations, ensuring consistency and saving valuable time.
Profile-based Configuration: Leiningen supports profile-based configuration, enabling developers to define distinct configurations for different environments or scenarios. Profiles can encompass dependencies, build settings, and other project-specific configurations, simplifying the process of switching between different project setups.
Plugin System: Leiningen boasts a versatile plugin system that empowers developers to extend its functionality. Plugins can augment Leiningen with additional tasks, hooks, middleware, wagons, and VCS methods, enabling customization and optimization of the build process.
Code Evaluation: Leiningen provides the "eval-in-project" function, allowing developers to evaluate code within the project context. This feature proves useful for executing project-specific code or modifying the project map before performing specific tasks.
Project Middleware: Leiningen supports project middleware, enabling the transformation of the project map before task execution. This flexible and controlled approach allows plugins to modify the project map according to specific requirements.
Maven Wagons: Leiningen supports the registration of "wagon" factories to handle non-standard transport protocols for repositories. This feature empowers developers to define custom transport methods for dependencies, such as handling repositories with different protocols like WebDAV.
VCS Methods: Leiningen provides comprehensive support for version control systems (VCS) through its VCS task. Plugins can integrate different VCS systems by defining methods that invoke specific version control operations.
Leiningen Video
Leiningen Technical Details
Operating Systems | Unspecified |
---|---|
Mobile Application | No |