Skip to content

Latest commit

 

History

History
42 lines (30 loc) · 1.53 KB

ARCHITECTURE.md

File metadata and controls

42 lines (30 loc) · 1.53 KB

Architecture

%%{init: {'theme':'neutral', 'flowchart': {'defaultRenderer': 'elk'}}}%%
flowchart LR
    schemas[(EIP Schemas)]
    xsd(XSD Parser)
    ui(Keip Canvas UI)
    eipDefs{{"EIP<br>Component<br>Definitions<br>(JSON)"}}
    flow{{"EIP<br>Flow<br>(JSON)"}}

    subgraph webapp [Flow Translator Webapp]
        translator(Flow Translator Lib)
    end

    xsd -->|generate| eipDefs
    eipDefs -->|consume| ui
    ui -->|generate| flow
    flow -->|translate to XML| webapp
    schemas -->|model & validate| eipDefs & flow
Loading

The Keip Canvas is a collection of modules that together power the functionality offered by the user interface. The project is organized as a monorepo with the following subprojects:

Models the JSON objects that are passed between the different modules to promote data consistency across the project.

Fetches XML Schema Definitions (XSD) and parses them into a catalog of EIP Components. The resulting component definitions are then used by the Canvas UI to populate the draggable node menu and provide the user with a specific set of configuration options for each EIP component type.

A single-page web application that provides drag, drop, and link capabilities for creating integration flow diagrams.

A web service that translates Flows created by the UI to target-specific integration XML documents.