Current limitations and known issues in Varve. These are tracked and will be addressed in future releases.
Color Management, Typography, and Print & Export entries were reviewed on 13 August 2026 against the current engine and website implementation. The color entry distinguishes native document values and working precision from browser display surfaces; print entries reflect the current export pipeline: bleed is configurable per page, visualized on the canvas, and honored by PDF/X. “Partial” means foundations exist but the complete user-facing path is not yet guaranteed.
Typography
Complex-script glyph shaping is still approximate in the live canvas
PartialPartial
Varve now has a standards-based shaping contract, Unicode source maps, and a HarfBuzz-compatible WASM adapter in the engine. The live Canvas2D renderer still uses browser measurement and fillText in this migration stage, so Arabic, Devanagari, Thai, and other contextual scripts are not yet guaranteed to match the canonical glyph layout across fonts and exports.
Workaround: For production-critical output, verify the selected font and export result. Basic Latin and CJK workflows remain the most predictable while the shaped-glyph renderer is integrated.
Mixed-direction layout is canonical in the engine, but not yet in every consumer
PartialPartial
The engine now resolves UAX #9 embedding levels, script itemization, per-line visual run ordering, word-level line breaking (never inside a grapheme), cluster-safe caret stops, hit testing, and selection geometry through one canonical paragraph layout pipeline. The inline editor and pointer tools still use the legacy textarea/canvas path, and export consumers are being migrated incrementally.
Workaround: Keep mixed-direction text short while validating it, and check the final export. Explicit paragraph direction can make intent clearer than Auto for authored text.
Rich text per-span editing is still being integrated
PartialPartial
Logical paragraph/run indexing, grapheme-safe formatting transactions, property removal, text replacement, and mixed bold/italic inspector state are now in place. Insertion-style state, full paragraph controls, composition transactions, and canonical shaped rendering for every span are still incomplete.
Workaround: Use the rich-span inspector for supported character properties and verify mixed-style text after editing. Separate text nodes remain the safest fallback for production-critical compositions.
Canonical glyph layout is not yet the sole rendering authority
PartialPartial
The engine exposes a derived layout snapshot containing glyph clusters, lines, caret stops, selection fragments, bounds, diagnostics, and cache identity. The existing canvas, text-on-path, mask, and export consumers are being migrated incrementally and may still use independent browser measurement paths.
Workaround: Treat complex-script, mixed-direction, and font-loading results as beta behavior and inspect exported output before delivery.
Collaboration
Collaboration is UI scaffolding only
ExperimentalExperimental
Collaboration features (PresenceIndicator, CollabCursorOverlay) are UI scaffolding with no transport or wire protocol. Real-time collaboration does not work.
Workaround: Use version control (git) for collaboration.
Motion
No state machine inspector
PlannedPlanned
State machine inspector for complex prototype flows is not implemented.
Workaround: Use timeline-based animation for now.
No rigging or IK
PlannedPlanned
Rigging and inverse kinematics (IK) are not implemented. Types are defined but rendering is deferred.
Workaround: Use manual keyframing for animation.
Color Management
Browser raster and GPU previews remain display-precision
PartialPartial
Native CMYK document values and precision-aware working buffers are supported. Browser raster decode and Canvas2D ImageData surfaces remain on the sRGB/RGBA8 display path, while the current WebGPU preview target is also RGBA8. Profile-aware raster decode, CMYK raster-plane import, and high-precision GPU targets are still being integrated.
Workaround: Use native desktop PDF/X or print export as the print authority, and treat the browser preview as directional. Verify the exported proof when color accuracy is production-critical.
Print & Export
Raster exports do not include bleed
PartialPartial
Bleed is part of the print workflow: it is configured on the page, visualized on the canvas, and honored by PDF/X exports (page boxes and trim geometry). Raster formats (PNG/JPEG) still export the artwork’s visual bounds only — the canonical page-plus-bleed bounds exist in the export plan but the standard export dialog does not use them.
Workaround: For raster deliverables with bleed, export at a larger scale and trim in post, or use the PDF/X path when the destination accepts PDF.
Multi-page PDF/X execution is still limited
PartialPartial
The native PDF/X path now emits distinct MediaBox, BleedBox, TrimBox, CropBox, and ArtBox values for the single-page production export path. Multi-page PDF execution and complete printer-mark preview are still being integrated.
Workaround: Export and inspect a PDF/X proof per page when the document contains multiple print pages.
Screen PDFs have no trim or bleed boxes
PartialPartial
The plain PDF export writes a MediaBox only. TrimBox and BleedBox are emitted only by the PDF/X path, so screen PDFs carry no print geometry metadata.
Workaround: Use PDF/X for any file destined for print.
Crop marks are not previewed on the canvas
PartialPartial
Bleed and trim guides are visualized on the canvas, and trim corner marks are shown with the print guides. The full printer mark set (crop/registration marks, color bars) is rendered only at PDF/X export time — there is no canvas print-preview of the exported mark layout.
Workaround: Export a PDF/X proof to review the mark layout before sending to print.
Missing bleed coverage is not detected automatically
PlannedPlanned
Preflight flags documents with no bleed, bleed below the recommended minimum, or non-uniform bleed, but cannot detect artwork that stops exactly at the trim edge. A production-preflight coverage check that inspects painted content in the bleed region is a future enhancement.
Workaround: Turn on the bleed guides while designing and check that backgrounds and images reach the bleed boundary by eye.
Get started
Want to help fix these? issues.
See the contribution guidelines to help implement these features.