An open source tool used to develop Polylith based architectures in Clojure.
Welcome to the wonderful world of Polylith!
This tool is made by developers for developers with the goal to maximize productivity and increase the quality of the systems we write. It supports your build pipeline but is not a build tool itself.
The Polylith concept can be implemented in any programming language, but this version of the Polylith tool targets Clojure which is a powerful and simple functional language for the JVM.
Polylith introduces the architectural concept of “service level building blocks”, which can be combined like LEGO® bricks to build our services and systems. Polylith’s LEGO-like bricks are easy to reason about, test, refactor, and reuse. They allow us to work with all our code in one place for maximum productivity, using a single REPL
The bricks can easily be put together to form different kinds of deployable artifacts, like services, tools, and libraries, in the same way we put together LEGO® when we were kids! Not surprisingly, it's just as simple and fun!
To give you an idea of what that can look like, take a quick look at the bricks and libraries that we use to build the Polylith tool (which is itself a Polylith workspace, represented by the poly column in the first diagram):
If you want to get started right away with writing code, we recommend you to at least read the page Polylith in a Nutshell from the high-level doc, where concepts like component, base, brick, and workspace, are introduced.