Skip to content

Latest commit

 

History

History
56 lines (54 loc) · 2.49 KB

index.md

File metadata and controls

56 lines (54 loc) · 2.49 KB
layout class logo h1 h2 actions
home
home
/assets/images/logos/boot-logo-3.png
Boot
Build tooling for Clojure

Builds are programs. Let's start treating them that way.

Most build tools are declarative, and for a long time they worked well for us. The problem is that the increasing number of platform, framework, and library combinations have made it impossible for these tools to be both declarative and comprehensive. Instead of a special-purpose DSL, Boot supplies abstractions and libraries you can use to automate nearly any build scenario with the full power of the Clojure language. It's not a build tool - it's build tooling.

  • Managed filesystem tree provides a scoped, immutable, append-only interface for communicating between tasks.
  • Easy classpath isolation with pods. Provides separate Clojure runtimes without separate JVMs.
  • Compose build pipelines in the project, in the build script, in the REPL, or on the command line.
  • Write quick Clojure scripts without a project context using shebang support.
  • Tasks are not coupled via hardcoded file paths or magical keys in a global configuration map.
  • Artifacts can never be stale. There is no need for a clean task.