Site navigation

Available

Copy should mean more than “something was written.”

Varve treats clipboard transfer as a document workflow: preserve the editable structure, carry the supported resources that make it look right, and tell you when a fallback is only text.

One coherent transfer

Structure, resources, and placement travel together.

Copying a frame includes its descendants and the supported image, mask, icon, and mockup resources it references. Paste allocates fresh identities, adopts layers into a selected frame, and applies a defined placement policy: same-document copies preserve their world pose unless a frame is explicitly selected, in which case the fragment is centered inside it; foreign or image/SVG content is centered in the selected frame or visible canvas viewport.

01SnapshotSelected roots and dependencies
02TransferEditable Varve format first
03RebaseFresh IDs, correct target

What it handles

Useful across the ways designers work.

Editable layer fragments

Nested groups and frames remain editable instead of becoming a screenshot or a flat export.

External images and SVG

Clipboard files and a bounded SVG subset pass through Varve's existing import pipeline. SVG sibling order, nested groups, spacing, transforms, and logical artifact boundaries remain intact instead of becoming indiscriminately flattened.

Wayland-aware desktop paste

On Linux desktop, native MIME transfer keeps editable layer paste available when WebKitGTK cannot expose the rich clipboard to the canvas.

Predictable placement

Paste uses the selected visible frame or group as an explicit destination; otherwise it centers foreign content in the canvas viewport without changing your zoom or pan.

Native text editing

Textareas, fields, IME composition, Unicode, and caret behavior remain owned by the browser when you are typing. Bounded HTML clipboard content can become editable canvas paragraphs with supported bold, italic, decoration, font, and color runs; unsupported formatting is reported. Internal transfers also preserve logical vertical-writing intent and orientation instead of inserting visual column breaks.

Command-specific formats

Copy Text, Copy as SVG, Copy as PNG, Paste as Plain Text, and Paste SVG Markup are available from the Edit menu and palette without changing existing shortcuts. SVG uses the selection's world-space bounds; PNG uses a transparent 1× output by default with explicit 2×/3× choices.

Owned asynchronous imports

Each picker and drop is tied to its initiating document and session. Starting a newer transfer cancels the older one before it can insert layers or overwrite progress, and Import Results reports only roots that actually landed.

Find imported artwork

When an import report includes inserted layers, Reveal selection selects those actual roots and fits their world bounds so offscreen results are easy to locate.

Cut waits for truth

If only a names-only text fallback is available, Cut leaves the original layers in place.

Undo stays local

Undo restores a Cut or Paste from document history without rereading or rewriting the system clipboard.

Capability matrix

What travels, and what stays honest.

RepresentationRouteResultKnown lossTested platform
Varve fragmentCopy / Cut / PasteEditable layers, supported assets, and carried generative edit recordsUnsupported external references are reported; advanced resources remain route-dependentVitest; browser/native lanes pending
SVGExternal SVG / paste / Copy as SVGEditable supported subset; exported roots retain order, grouping, transforms, and world-space arrangementUnsupported XML, effects, and semantics are reportedChromium visual fixture; Firefox/Wayland pending
PNG/JPEG/WebPExternal image / pasteRaster image with alpha where suppliedPixels are not editable vectorsBrowser importer; native transport pending
Plain text / bounded HTMLSystem text or rich clipboard / pasteEditable canvas text with a supported rich-text subset, or native caret insertionEmbedded media and unsupported formatting are omitted with warningsVitest parser coverage; keyboard lane pending
Figma ordinary CopyPrivate clipboard envelopeUnsupported / filteredNo undocumented decoder is enabledUnverified until owned Firefox capture

Search Varve