Supported Import and Export Formats
Every file format Kanvas accepts on import and produces on export, with detection rules, limits, and what each format keeps.
Categories:
This page lists exactly what Kanvas accepts and produces. For the steps, see Import and Merge Designs and Export Designs.
Import π
Kanvas accepts the extensions .yml, .yaml, .json, .tar, .tar.gz, .tgz, .gz, and .zip. Detection is by content and takes the first match in the order below.
| Order | Format | Extensions | Detected when | Notes |
|---|---|---|---|---|
| 1 | Meshery design | .yml .yaml .json | The schema version is a supported design version | Lossless round trip of a design file export |
| 1 | Meshery design as OCI image | .tar .tgz .tar.gz .zip | The archive’s layers contain a design file | Only the first design is taken. Other layer files are ignored. No design file means failure. |
| 2 | Kubernetes manifest | .yml .yaml | One or more valid Kubernetes documents | Multi-document files work. Unknown kinds are kept as generic objects. |
| 3 | Helm chart | .tgz .tar.gz .gz .tar .zip | A valid packaged chart | An uncompressed .tar is reported as needing gzip. No values overrides. |
| 4 | Docker Compose | .yml .yaml | Converts as a Compose file | The result is Kubernetes components. |
| 5 | Kustomize | .yml .yaml (kustomization), or an archive containing kustomization.yaml | The project builds | Archive must contain every referenced file. |
If nothing matches, the import fails and lists why each format was rejected. The interface shows only the generic failure message.
Import sources π
| Source | Supported | Limits |
|---|---|---|
| Local file in the import dialog | Yes | One file at a time. No size limit in the client. |
| Single-file http or https URL in the import dialog | Yes | 16 MiB body, 5 redirects, 10 second connect, 30 second request. Internal addresses are refused. |
| Drag or paste on the canvas | Yes | One design per file. Images and .txt files become canvas objects, limited to 500 KB on every plan. |
| Catalog clone or open | Yes | Public or published designs only. |
| Files and folders in a repository connected through the GitHub integration | Yes | One private design per valid file. |
Git clone URL, Helm repository URL, oci:// reference, directory, or pasted text | No | |
| RAR and 7Z archives | No | The drop check lets them through and the import fails. |
Export π
| Output | Keeps layout, annotations, metadata | Re-importable | Notes |
|---|---|---|---|
| Design file (YAML) | Yes | Yes, lossless | Downloads as <design name>.yml. |
| Design (OCI image) | Yes | Yes | Archive of an OCI image. Push it with a registry tool. |
| Kubernetes manifest | No | Resources only | Plain Kubernetes YAML. |
| Helm chart | No | Resources only | .tar.gz chart archive. |
| Embeddable JavaScript module | Canvas snapshot | No | Static snapshot for web pages. See Embed Designs. |
| View as JSON | Not applicable | No | Operator mode only. Downloads as <view name>.json. |
The canvas screenshot (a PNG picture, not a design file) is a separate action. See Canvas Actions. Not available: Docker Compose export, SVG image export, export of an earlier version, and per-format export options. The catalog’s light and dark snapshot images are produced by an automated workflow after publishing and are not user exports.
Format by operation π
| Format | Import | Export |
|---|---|---|
| Meshery design (YAML or JSON) | Yes | Yes (YAML) |
| Meshery design (OCI image) | Yes | Yes |
| Kubernetes manifest | Yes | Yes |
| Helm chart | Yes | Yes |
| Docker Compose | Yes | No |
| Kustomize | Yes | No |
| JavaScript embed | No | Yes |
Related Reading
- Export Designs
- Import and Merge Designs
- Add and Configure Components
- Build Designs
- Canvas Actions
- Clone a Design
Recent Discussions on Kanvas
- Jul 12 | Unleash Visual Power: Import Your Configs by zihan kuang
- Oct 14 | Explore Meshery's Published Relationship Design Examples by Awani Alero
- Oct 03 | Design Review RFC: Kanvas Empty State Enhancement by Lee Calcote
- Jul 19 | [For Discussion] Visual indication of semantically vs non-semantically meaningful Meshery components by Lee Calcote
- Jun 07 | What are the conditions for a "System is unhealthy" warning? by James
- May 30 | Looking for a meshmate to help with first PR by Faisal Imtiyaz123
- Feb 28 | For Discussion: Capturing potential, but unrealized Relationships in Design Snapshots by Lee Calcote
- Feb 12 | Hint on Scaling & Verifying Cronjob in Playground by Sandra Ashipala





