Release notes

2.0

This release introduces a push-based transfer architecture. The previous query-based selective-import dialog is replaced by a Figma plugin that pushes transfers through a local bridge server to a Kanzi Studio plugin. See Kanzi Figma Importer 2.0 for the new three-part architecture.

New features

  • Six transfer modes: Clipboard, Library Asset, Image, Shape, Text, Layout. Each Figma selection enables the compatible modes. Click Send to start the transfer. See Transfer modes and Selection rules.

  • Variables and modes pipeline. Figma Variable Collections become Kanzi StateManagers with one State per mode. PropertyTypes are auto-bound to imported nodes. See Library Assets (FVC pipeline) and Variables and modes.

  • Layer effects. Figma Drop Shadow and Inner Shadow transfer as Kanzi ShadowEffect2D attached properties. Multiple effects per node are supported.

  • KZ_* tag vocabulary. Directives added to Figma layer names that steer routing: [KZ_BAK] (bake subtree to image), [KZ_BAK_TINT] (B/W mask plus per-instance tint colour), [KZ_IMG] (bake a single layer to an image), [KZ_BTN] and [KZ_TGL] (create Button2D/ToggleButton2D nodes only — the pressed/released/toggle state is wired manually in Kanzi Studio), [KZ_SDF] (force SDF render on TEXT). See Tag cheat sheet.

  • Online mode. The Cloudflare Tunnel and Access Key handshake lets the Figma plugin run in a browser or on a different machine than Kanzi Studio. See Online mode.

  • Conflict resolution. Re-imports surface a per-property diff in the Inspector with Override or Keep choice. A Keep user edits bulk button preserves your work where Figma matched. See Query mode.

  • Re-import tracking via Figma metadata node. Every imported asset is stamped with its Figma node ID so renames and moves in Kanzi Studio stay matched. See Figma metadata node and re-imports.

  • Auto font import. The multi-source font resolver chain (project Fonts/ folder, Google Fonts, Bunny Fonts, Fontsource) imports the right TTF on Text transfer. See Automatic font import.

Known issues and limitations

These Figma features do not transfer to Kanzi. Account for them in your Figma designs.

Shapes

Feature

Note

Per-shape pattern / tile / repeat fills

Single image fills work — use Image transfer instead.

Miter, bevel and round corner joins

Corners are always smoothed by the SDF renderer.

Fill and stroke blend modes (Multiply, Overlay, Screen, …)

Flatten to a solid colour in Figma before transferring.

Dynamic, wiggle and tapered brush strokes

Use a constant-width stroke.

Dashed strokes (any dash cap)

Not supported. Use solid strokes instead.

Text

Feature

Note

Text decoration (strikethrough, underline)

Text case transforms (upper, lower, title, smallcaps)

Pre-transform the text content in Figma.

Effects

Feature

Note

Background Blur

Layer Blur

Layout

Feature

Note

Auto-layout (item spacing, padding, wrap, direction)

Position children absolutely in Figma.

Layer masking (isMask)

Constraints (resize behaviours)

FRAME-as-shape without fills or strokes

A frame is treated as a shape only when it has at least one visible fill or stroke. Empty containers don’t auto-route to Shape transfer.

Variables

Feature

Note

TEXTURE auto-binding

Image swaps via variables need to be wired manually in Kanzi Studio.

Variants

Feature

Note

Variant-prefab generation with per-variant property overrides

Build the variant states manually in Kanzi Studio.

Note

Auto-generated variant states currently switch the variant enum only — they do not drive a visual property change. Build the visual states manually in Kanzi Studio.

Styles

Feature

Note

Fill style

Apply the colour, gradient, or image fill directly to the node — named fill styles from the Figma Styles panel are not transferred.

Connection

Feature

Note

Jump-to-Figma tab switching

The Figma API does not allow plugins to switch the active browser tab.

Features that transfer but may render incorrectly

These features transfer to Kanzi Studio but may not yet render as designed in this release.

Feature

Note

Text inside composites can show placeholder text

An inner text layer may display its design placeholder (for example Body L · 0123) instead of the real instance text.

Text colour from variables or variants may not apply

Transferred text can stay the default colour even when a colour variable is bound; colour variant states currently switch only an enum with no visible change.

Fonts can fall back to the Kanzi default

If a Text transfer references a font that is not yet in the project, the text renders in Kanzi’s default font. Transfer the font first (or use Text as SDF / [KZ_SDF]), then re-transfer.

Semi-transparent shape fills may render opaque

Glass or transparent fills on shapes may come through fully opaque in this release.

Previous releases

Release notes for earlier versions of Kanzi Figma Importer are available at docs.kanzi.com/figma-importer.

See also

Kanzi Figma Importer 2.0

Transfer modes

Troubleshooting