Polylith

Polylith is a both a concept and a tool. It works as a monorepo. It divides the code into:

  • Components: building blocks that can represent part of the domain.
  • Base: It’s similar to a component it’s goal it to interact with the external world using some sort of API: REST, command-line, etc.
  • Project: specifies which components and bases should be included in an artifact (service, lambda, etc)
    • Development Project: a special kind of project used during development. This allows to have the entire project into one single REPL.
Back to notes