graph TB
    subgraph Application["Your Application"]
        AppCode[Application Code]
        AppData[Pict AppData Store]
    end

    subgraph FlowView["PictViewFlow (Main Entry Point)"]
        direction TB
        FV[PictViewFlow]
    end

    subgraph Views["Views (Rendering)"]
        NodeView[Flow Node View]
        ToolbarView[Toolbar View]
        FloatingToolbar[Floating Toolbar View]
        PanelView[Properties Panel View]
    end

    subgraph Services["Services (Business Logic)"]
        DM[DataManager]
        RM[RenderManager]
        SM[SelectionManager]
        VM[ViewportManager]
        PM[PanelManager]
        IM[InteractionManager]
        LS[Layout Service]
        CR[ConnectionRenderer]
        PG[PathGenerator]
        PR[PortRenderer]
        CHM[ConnectionHandleManager]
        TM[Tether Service]
    end

    subgraph Providers["Providers (Configuration)"]
        NTP[NodeTypes Provider]
        EHP[EventHandler Provider]
        LP[Layouts Provider]
        TP[Theme Provider]
        CP[CSS Provider]
        GP[Geometry Provider]
        NP[Noise Provider]
        SVG[SVGHelpers Provider]
        CSP[ConnectorShapes Provider]
        IP[Icons Provider]
        PCP[PanelChrome Provider]
    end

    subgraph Extension["Extension Points"]
        FC[PictFlowCard]
        FCP[PictFlowCardPropertiesPanel]
        PT[Panel: Template]
        PMD[Panel: Markdown]
        PF[Panel: Form]
        PVW[Panel: View]
    end

    AppCode --> FV
    FV <--> AppData
    FV --> Views
    FV --> Services
    FV --> Providers

    DM <--> AppData
    RM --> NodeView
    RM --> CR
    PM --> PanelView
    IM --> SM
    IM --> VM
    CR --> PG
    CR --> PR

    FC --> NTP
    FCP --> PM
    PT --> PanelView
    PMD --> PanelView
    PF --> PanelView
    PVW --> PanelView

    EHP --> AppCode

    style Application fill:#e8f5e9,stroke:#42b983,color:#333
    style FlowView fill:#e3f2fd,stroke:#42a5f5,color:#333
    style Views fill:#fce4ec,stroke:#ef5350,color:#333
    style Services fill:#fff3e0,stroke:#ffa726,color:#333
    style Providers fill:#f3e5f5,stroke:#ab47bc,color:#333
    style Extension fill:#e0f2f1,stroke:#26a69a,color:#333
