{"id":19622929,"url":"https://github.com/meshery-extensions/helm-kanvas-snapshot","last_synced_at":"2025-05-07T08:57:44.014Z","repository":{"id":257803528,"uuid":"862969066","full_name":"meshery-extensions/helm-kanvas-snapshot","owner":"meshery-extensions","description":null,"archived":false,"fork":false,"pushed_at":"2025-04-20T15:07:56.000Z","size":137178,"stargazers_count":28,"open_issues_count":6,"forks_count":17,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-28T03:34:20.495Z","etag":null,"topics":["architecture-diagram","cncf","cncf-shapes","helm","kanvas","kubernetes","layer5","meshery","solution-architecture","topology"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/meshery-extensions.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/security-insights.yml","support":null,"governance":"GOVERNANCE.md","roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-09-25T13:49:10.000Z","updated_at":"2025-04-20T14:55:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"c19424c3-6fd4-42da-81bf-9333a55317e1","html_url":"https://github.com/meshery-extensions/helm-kanvas-snapshot","commit_stats":null,"previous_names":["meshery/helm-kanvas-snapshot"],"tags_count":38,"template":false,"template_full_name":"meshery/meshery","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshery-extensions%2Fhelm-kanvas-snapshot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshery-extensions%2Fhelm-kanvas-snapshot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshery-extensions%2Fhelm-kanvas-snapshot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshery-extensions%2Fhelm-kanvas-snapshot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meshery-extensions","download_url":"https://codeload.github.com/meshery-extensions/helm-kanvas-snapshot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252810271,"owners_count":21807759,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["architecture-diagram","cncf","cncf-shapes","helm","kanvas","kubernetes","layer5","meshery","solution-architecture","topology"],"created_at":"2024-11-11T11:30:03.714Z","updated_at":"2025-05-07T08:57:44.006Z","avatar_url":"https://github.com/meshery-extensions.png","language":"Go","funding_links":[],"categories":["Application Delivery"],"sub_categories":[],"readme":"# Meshery Extension: Kanvas Snapshot Helm Plugin\n\n[Meshery Extensions](https://meshery.io/extension) are plugins or add-ons that enhance the functionality of the Meshery platform beyond its core capabilities. Meshery supports different types of extensions ([docs](https://docs.meshery.io/extensions/)):\n\n- [Adapters](https://docs.meshery.io/concepts/architecture/adapters): Adapters allow Meshery to interface with the different cloud native infrastructure.\n- [Load Generators](https://docs.meshery.io/extensibility/load-generators): for performance characterization and benchmarking\n- [Integrations](https://docs.meshery.io/extensibility/integrations): model-based support for a broad variety of design and orchestration of cloud and cloud native platforms, tools, and technologies.\n- [Providers](https://docs.meshery.io/extensibility/providers): for connecting to different cloud providers and infrastructure platforms\n- [UI Plugins](https://docs.meshery.io/extensibility/ui): Meshery UI has a number of extension points that allow users to customize their experience with third-party plugins.\n\u003c!-- TODO: NEW PAGE NEEDED HERE: - CLI Plugins:  --\u003e\n\n\n**Table of Contents**\n\n- [Meshery Extension: Kanvas Snapshot Helm Plugin](#meshery-extension-kanvas-snapshot-helm-plugin)\n  - [Extension Overview](#extension-overview)\n    - [Features](#features)\n  - [Installation and Use](#installation-and-use)\n    - [Prerequisites](#prerequisites)\n    - [Usage](#usage)\n  - [Contributing](#contributing)\n  - [Join the Meshery community!](#join-the-meshery-community)\n  - [Contributing](#contributing-1)\n    - [Show Your Support](#show-your-support)\n    - [License](#license)\n\n## Extension Overview\n\nThe **Kanvas Snapshot Helm Plugin** allows users to generate a visual snapshot of their Helm charts directly from the command line. It simplifies the process of creating Meshery Snapshots, providing a visual representation of packaged Helm charts. This plugin integrates with Meshery Cloud and GitHub Actions to automate the workflow of snapshot creation, which is especially useful for Helm users who need to quickly visualize their chart configurations.\n\nHelm charts can be complex, especially when custom configurations are applied via `values.yaml` files. This Meshery extension bridges the gap between Helm chart configurations and their visual representation by converting Helm charts into **Kanvas Snapshots**. These snapshots can be received either via email or as a URL displayed directly in the terminal.\n\n### Features\n\n1. **Snapshot Generation:** Create visual snapshots of Helm charts, complete with associated resources.\n2. **Synchronous/Asynchronous Delivery:** Choose between receiving snapshots via email or directly in the terminal.\n3. **Seamless Integration:** Leverages Meshery Cloud and GitHub Actions to handle snapshot rendering.\n4. **Support for Packaged Charts:** Works with both packaged `.tar.gz` charts and unpackaged Helm charts.\n\n## Installation and Use\n\nTo install the Meshery Snapshot Helm Plugin, use the following steps:\n\n### Prerequisites\n\n- `helm` must be [installed]( helm plugin install https://github.com/meshery-extensions/helm-kanvas-snapshot) on your system.\n- (Optional) A free [Layer5 Cloud](https://cloud.layer5.io) user account.\n\n**Plugin Installation**\n\n1. Run the following command to install the Helm Kanvas Snapshot plugin:\n\n   ```bash\n   helm plugin install https://github.com/meshery-extensions/helm-kanvas-snapshot\n   ```\n\n3. Verify the installation by running:\n\n   ```bash\n   helm plugin list\n   ```\n\n   You should see the Kanvas Snapshot listed as `helm-kanvas-snapshot`.\n\nUpdate to the latest version:\n\n```bash\nhelm plugin update helm-kanvas-snapshot\n```\n### Usage\n\nOnce the plugin is installed, you can generate a snapshot using either a packaged or unpackaged Helm chart.\n\n```bash\nhelm helm-kanvas-snapshot -f \u003cchart-URI\u003e [--name \u003csnapshot-name\u003e] [-e \u003cemail\u003e]\n```\n\n- **`-f`**, **`--file`**: (required) path or URL to the Helm chart (required).\n- **`--name`**: (optional) name for the snapshot. If not provided, a name will be auto-generated based on the chart name.\n-  **`-e`**, **`--email`**: (optional) email address to notify when snapshot is ready. If not provided, a link to the snapshot will be displayed in the terminal.\n\n**Example**\n\nTo generate a snapshot for a Helm chart located at `https://meshery.io/charts/meshery-v0.8.12.tgz`, you can use:\n\n```bash\nhelm helm-kanvas-snapshot -f https://meshery.io/charts/meshery-v0.8.12.tgz --name meshery-chart\n```\n\n## Contributing\n\nPlease do! Thank you for your help in improving this Meshery extension! :balloon:\n\nStart by forking the repository. After making your changes, submit a pull request. For more information, see the [Contributing Guide](CONTRIBUTING.md).\n\n\n**1. Fork the Repository**\n\nTo get started, you'll first need to clone the Meshery Snapshot Helm Plugin repository from GitHub. Run the following command in your terminal:\n\n```bash\ngit clone https://github.com/meshery-extensions/helm-kanvas-snapshot.git\n```\n\n**2. Navigate to the Plugin Directory**\n\nOnce the repository is cloned, navigate to the `helm-kanvas-snapshot` directory.\n\n```bash\ncd helm-kanvas-snapshot\n```\n\n**4. Build the binary locally**\n\n```bash\nmake local.build\n```\n\n**5. Test the binary**\n\n```bash\n./helm-kanvas-snapshot -f https://meshery.io/charts/v0.8.0-meshery.tar.gz\n```\n\nThis command will trigger the snapshot generation process. If everything is set up correctly, you should see a visual snapshot URL or receive the snapshot via email, depending on the options you specified.\n\n\u003cdiv\u003e\u0026nbsp;\u003c/div\u003e\n\n## Join the Meshery community!\n\n\u003ca name=\"contributing\"\u003e\u003c/a\u003e\u003ca name=\"community\"\u003e\u003c/a\u003e\nOur projects are community-built and welcome collaboration. 👍 Be sure to see the \u003ca href=\"https://docs.meshery.io/project/contributing#not-sure-where-to-start\"\u003eContributor Welcome Guide\u003c/a\u003e and \u003ca href=\"https://meshery.io/community#handbook\"\u003eCommunity Handbook\u003c/a\u003e for a tour of resources available to you and the \u003ca href=\"https://layer5.io/community/handbook/repository-overview\"\u003eRepository Overview\u003c/a\u003e for a cursory description of repository by technology and programming language. Jump into community \u003ca href=\"https://slack.meshery.io\"\u003eSlack\u003c/a\u003e or \u003ca href=\"https://meshery.io/community#discussion-forums\"\u003ediscussion forum\u003c/a\u003e to participate.\n\n\u003cp style=\"clear:both;\"\u003e\n\u003ca href =\"https://meshery.io/community\"\u003e\u003cimg alt=\"MeshMates\" src=\".github/assets/images/readme/layer5-community-sign.png\" style=\"margin-right:36px; margin-bottom:7px;\" width=\"140px\" align=\"left\" /\u003e\u003c/a\u003e\n\u003ch3\u003eFind your MeshMate\u003c/h3\u003e\n\n\u003cp\u003eMeshMates are experienced community members, who will help you learn your way around, discover live projects, and expand your community network. Connect with a Meshmate today!\u003c/p\u003e\n\nFind out more on the \u003ca href=\"https://meshery.io/community#meshmates\"\u003eMeshery community\u003c/a\u003e. \u003cbr /\u003e\n\n\u003c/p\u003e\n\u003cbr /\u003e\u003cbr /\u003e\n\u003cdiv style=\"display: flex; justify-content: center; align-items:center;\"\u003e\n\u003cdiv\u003e\n\u003ca href=\"https://meshery.io/community\"\u003e\u003cimg alt=\"Meshery Cloud Native Community\" src=\"https://docs.meshery.io/assets/img/readme/community.png\" width=\"140px\" style=\"margin-right:36px; margin-bottom:7px;\" width=\"140px\" align=\"left\"/\u003e\u003c/a\u003e\n\u003c/div\u003e\n\u003cdiv style=\"width:60%; padding-left: 16px; padding-right: 16px\"\u003e\n\u003cp\u003e\n✔️ \u003cem\u003e\u003cstrong\u003eJoin\u003c/strong\u003e\u003c/em\u003e any or all of the weekly meetings on \u003ca href=\"https://meshery.io/calendar\"\u003ecommunity calendar\u003c/a\u003e.\u003cbr /\u003e\n✔️ \u003cem\u003e\u003cstrong\u003eWatch\u003c/strong\u003e\u003c/em\u003e community \u003ca href=\"https://www.youtube.com/@mesheryio?sub_confirmation=1\"\u003emeeting recordings\u003c/a\u003e.\u003cbr /\u003e\n✔️ \u003cem\u003e\u003cstrong\u003eFill-in\u003c/strong\u003e\u003c/em\u003e a \u003ca href=\"https://layer5.io/newcomers\"\u003ecommunity member form\u003c/a\u003e to gain access to community resources.\n\u003cbr /\u003e\n✔️ \u003cem\u003e\u003cstrong\u003eDiscuss\u003c/strong\u003e\u003c/em\u003e in the \u003ca href=\"https://meshery.io/community#discussion-forums\"\u003eCommunity Forum\u003c/a\u003e.\u003cbr /\u003e\n✔️ \u003cem\u003e\u003cstrong\u003eExplore more\u003c/strong\u003e\u003c/em\u003e in the \u003ca href=\"https://meshery.io/community#handbook\"\u003eCommunity Handbook\u003c/a\u003e.\u003cbr /\u003e\n\u003c/p\u003e\n\u003c/div\u003e\u003cbr /\u003e\u003cbr /\u003e\n\u003cdiv\u003e\n\u003ca href=\"https://slack.meshery.io\"\u003e\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/meshery/meshery/master/.github/assets/images/readme/slack.svg\"  width=\"110px\" /\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/meshery/meshery/master/.github/assets/images/readme/slack.svg\" width=\"110px\" /\u003e\n  \u003cimg alt=\"Shows an illustrated light mode meshery logo in light color mode and a dark mode meshery logo dark color mode.\" src=\"https://raw.githubusercontent.com/meshery/meshery/master/.github/assets/images/readme/slack.svg\" width=\"110px\" align=\"left\" /\u003e\n\u003c/picture\u003e\n\u003c/a\u003e\n\u003c/div\u003e\n\u003c/div\u003e\n\u003cbr /\u003e\u003cbr /\u003e\n\u003cp align=\"left\"\u003e\n\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp; \u003ci\u003eNot sure where to start?\u003c/i\u003e Grab an open issue with the \u003ca href=\"https://github.com/issues?q=is%3Aopen+is%3Aissue+archived%3Afalse+org%3Alayer5io+org%3Ameshery+org%3Aservice-mesh-performance+org%3Aservice-mesh-patterns+label%3A%22help+wanted%22+\"\u003ehelp-wanted label\u003c/a\u003e.\n\u003c/p\u003e\n\u003cbr /\u003e\u003cbr /\u003e\n\n\u003cdiv\u003e\u0026nbsp;\u003c/div\u003e\n\n## Contributing\n\nPlease do! We're a warm and welcoming community of open source contributors. Please join. All types of contributions are welcome. Be sure to read the [Contributor Guides](https://docs.meshery.io/project/contributing) for a tour of resources available to you and how to get started.\n\n\u003c!-- \u003ca href=\"https://youtu.be/MXQV-i-Hkf8\"\u003e\u003cimg alt=\"Deploying Linkerd with Meshery\" src=\"https://docs.meshery.io/assets/img/readme/deploying-linkerd-with-meshery.png\" width=\"100%\" align=\"center\" /\u003e\u003c/a\u003e --\u003e\n\n\u003cdiv\u003e\u0026nbsp;\u003c/div\u003e\n\n### Show Your Support\n\n\u003cp align=\"center\"\u003e\n  \u003ci\u003eIf you like Helm kanvas Snapshot, please \u003ca href=\"../../stargazers\"\u003e★\u003c/a\u003e star this repository to show your support! 🤩\u003c/i\u003e\n\u003c/p\u003e\n\n### License\n\nThis repository and site are available as open-source under the terms of the [Apache 2.0 License](https://opensource.org/licenses/Apache-2.0).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeshery-extensions%2Fhelm-kanvas-snapshot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeshery-extensions%2Fhelm-kanvas-snapshot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeshery-extensions%2Fhelm-kanvas-snapshot/lists"}