4. Technical Design

Phlex is divided into several subsystems, each of which is responsible for a specific aspect of the framework’s functionality. A subsystem is a set of libraries with a well-defined public interface. One subsystem may make use of the functionality provided by another subsystem only through the public interface of the other subsystem. The set of subsystems may have no circular dependencies.

Phlex also makes use of several external subsystems, which are not part of the Phlex codebase but are used by Phlex to provide certain functionality. There are also several external systems that users of Phlex may interact with in the context of using Phlex, but which are not part of Phlex itself.

This chapter of the document enumerates the subsystems, and describes their responsibliities and interactions.

4.20. External Subsystems

  • Build

  • CI

  • Documentation

  • Event display

  • Workflow management