Skip to content

feat: use embedded Kanvas design for Meshery architecture diagram#7731

Open
shteypandey28-hue wants to merge 7 commits into
layer5io:masterfrom
shteypandey28-hue:feature/meshery-architecture-embed
Open

feat: use embedded Kanvas design for Meshery architecture diagram#7731
shteypandey28-hue wants to merge 7 commits into
layer5io:masterfrom
shteypandey28-hue:feature/meshery-architecture-embed

Conversation

@shteypandey28-hue
Copy link
Copy Markdown
Contributor

Description

This PR replaces the static SVG with an interactive, embedded Meshery Kanvas design using the @layer5/meshery-design-embed component. This directly addresses the feedback from @lee and @james Horton to use a proper embedded design rather than custom SVG animations.

(Note: Currently using a placeholder design ID to verify the component layout. Will swap out the embedId and script once the final architecture design is exported from Kanvas.)

Notes for Reviewers

  • Removed old SVG approach and replaced with MesheryDesignEmbed.
    • Uses a placeholder Kanvas embed for now.
    • Ensured no "LLM slop" is present in the architecture implementation.
      Signed commits
  • Yes, I signed my commits.

@shteypandey28-hue shteypandey28-hue force-pushed the feature/meshery-architecture-embed branch from db80242 to e28eb93 Compare May 14, 2026 14:23
@Rajesh-Nagarajan-11
Copy link
Copy Markdown
Member

Attach a video recording please

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 14, 2026

🚀 Preview deployment: https://layer5.io/pr-preview/pr-7731/

Note: Preview may take a moment (GitHub Pages deployment in progress). Please wait and refresh. Track deployment here

@shteypandey28-hue shteypandey28-hue force-pushed the feature/meshery-architecture-embed branch from 64cf081 to ecba6b8 Compare May 14, 2026 16:28
@shteypandey28-hue
Copy link
Copy Markdown
Contributor Author

shteypandey28-hue commented May 14, 2026

Hi @Rajesh-Nagarajan-11,

I've attached the video recording below showing the Meshery Architecture Design Embed in action. It demonstrates the interactive Cytoscape graph loading properly in both light and dark modes, with the auto-centering working as expected.

meshery_arch.mp4

The recent commits also include a fix to ensure the script path resolves correctly across all nested routes. Let me know if you need any other adjustments!

@shteypandey28-hue shteypandey28-hue force-pushed the feature/meshery-architecture-embed branch from 819e899 to c276fb7 Compare May 14, 2026 18:13
Signed-off-by: shteypandey28-hue <shteypandey28@gmail.com>
Signed-off-by: shteypandey28-hue <shteypandey28@gmail.com>
Signed-off-by: shteypandey28-hue <shteypandey28@gmail.com>
Signed-off-by: shteypandey28-hue <shteypandey28@gmail.com>
Signed-off-by: shteypandey28-hue <shteypandey28@gmail.com>
…routes

Signed-off-by: shteypandey28-hue <shteypandey28@gmail.com>
@shteypandey28-hue shteypandey28-hue force-pushed the feature/meshery-architecture-embed branch from c276fb7 to 9f9487d Compare May 14, 2026 18:15
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@shteypandey28-hue why this file?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file contains the exported Cytoscape JSON data and layout configuration generated directly from the Meshery Kanvas Playground.

The @layer5/meshery-design-embed component requires an embedScriptSrc to dynamically render the interactive diagram. When a design is exported from Kanvas via the "Export to JS/Embed" option, it generates this file containing all the necessary base64 SVG assets, coordinates, and styling configurations.

Why it's in the /static directory: Initially, I placed this in src/assets, but the embed script dynamically injects a <script type="module" src="..."> tag at runtime. Gatsby doesn't resolve relative asset paths in injected tags during runtime, resulting in a 404 error. Placing it in the static/ directory ensures Gatsby serves it as a public asset, making it directly accessible for the embed component to fetch and render the interactive architecture diagram successfully.

@Rajesh-Nagarajan-11
Copy link
Copy Markdown
Member

image

????

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants