Skip to content

EXPERIMENTAL FEEDBACK REQUEST - CALM architecture explorer #1846

@markscott-ms

Description

@markscott-ms

Experiment Feature Feedback

The CALM maintainers seek your feedback on an experimental feature or module, detailed below.

Please add constructive positive or negative feedback as comments to this issue.

Experimental Feature Process

Description of Feature:

Interactive web-based visualization and exploration of FINOS CALM (Common Architecture Language Model) architecture diagrams.

Key Features

  • Interactive Graph Visualisation: Auto-layouted architecture diagrams using ReactFlow and Dagre
  • JSON Editor: Built-in Monaco editor with syntax highlighting and validation
  • Risk Visualisation: Colour-coded risk levels, risk/mitigation badges, and governance control annotations
  • Node Details Panel: Detailed view of node properties, interfaces, risks, and mitigations
  • Control Governance: Display of controls and governance annotations on nodes and edges
  • File Import/Export: Upload and download CALM JSON files
  • Responsive Layout: Resizable panels for optimal workspace management

See #1766 and #1827

Feedback Timeline:

Experimental Feature Process

Target Project:

https://github.com/finos/architecture-as-code/tree/main/experimental/calm-explorer

User Stories:

  • As an architect I want a way to visualize and explore a CALM architecture
  • As an risk analyst I want to show or review the non-functional controls associated with the architecture.

Feedback Emphasis:

  • How this could be integrated into CalmHub (or should it)

Current Limitations:

  • Current UI capability of CalmHub has a limited feature set and visualization.

Implementation Details:

  • ✅ Added calm-explorer to npm workspaces in root package.json

Technology Stack

  • React 18 with TypeScript
  • Vite for build tooling and dev server
  • ReactFlow for graph visualisation
  • Dagre for automatic graph layout
  • Monaco Editor for JSON editing
  • Tailwind CSS and shadcn/ui component library
  • Vitest for testing (50 passing tests)

Additional Context:

...add any other context, diagrams, mockups, or screenshots about the feature here...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions