The system architecture makes extensive use of separation of concerns to keep interdependencies to a minimum and make the system more stable. This is true on the system level where a clear separation exists between frontends and backend, but also within the backend itself, where individual “agent” processes (services) handle specific parts of the functionality, and even within these agents. The desktop frontend, too, is separated into multiple independent components called “tools”. ezDL is completely written in Java using common state-of-the-art frameworks and libraries.

Architecture Overview


There is built-in support for connecting to:


Available Frontends

  • Desktop (Swing/JavaFX)
  • Mobile (Android 4+)
  • Web (GWT, experimental, for Khresmoi project only)



GPL v3, other licenses on request


Supported Platforms

Java 7+ (Windows, Linux, Mac OS X)