Vector Tools

Varve provides a comprehensive set of vector drawing tools for creating everything from simple geometric shapes to complex bezier paths. All shape types share a unified property system for fills, strokes, and effects.

Basic Shape Tools

Rectangle R

The Rectangle tool creates rectangular shapes. Click and drag on the canvas to define the rectangle's bounds. Hold Shift while dragging to constrain to a perfect square. After creation, you can adjust corner radius in the Inspector — set uniform rounding or control each corner independently.

Ellipse E

Creates ellipses and circles. Drag to define the bounding box, or hold Shift to constrain to a perfect circle. Ellipses support all fill types (solid, gradient, image), strokes, and effects.

Line L

Draws straight lines. Click and drag from the start point to the end point. Lines support stroke styling (weight, color, dash pattern, cap style) but not fills.

Arrow A

Like the Line tool but with an arrowhead at the end point. The arrowhead scales proportionally with stroke weight. Both line and arrowhead share the same stroke styling.

Pen Tool P

The Pen tool creates bezier paths — the foundation of precise vector illustration. It works by placing anchor points and adjusting cubic bezier control handles:

  • Click to place a corner point (straight line segment)
  • Click and drag to place a smooth point with symmetric bezier handles
  • Hold Shift to constrain the new segment to 45-degree increments
  • Double-click or click the first point to close the path
  • Press Escape to complete an open path

After creation, switch to the Node Edit tool (double-click the path with the Select tool) to edit individual anchors and handles. In node edit mode:

  • Drag an anchor point to move it
  • Drag a bezier handle to adjust curvature
  • Backspace to delete the selected anchor (minimum 2 points)
  • C to toggle between corner and smooth handle types

Pencil Tool Shift+P

The Pencil tool enables freehand drawing. Click and drag to draw a path that follows your cursor. Behind the scenes, Varve applies two stages of refinement:

  1. Ramer-Douglas-Peucker simplification — Reduces collinear points while preserving shape
  2. Schneider least-squares cubic bezier fitting — Converts the simplified polyline into smooth bezier curves with automatic corner detection

The result is a clean, editable path with far fewer points than the raw input. You can further refine it using the Node Edit tool.

Polygon and Star Tools

The Polygon tool creates regular polygons (3 to many sides). The Star tool creates star shapes with configurable points and inner radius. Both are accessed through the shape tool group in the toolbar. After creation, you can adjust the number of sides or points in the Inspector.

Frame Tool F

Frames are containers that clip their content. They're analogous to artboards in other design tools. Frames can contain other nodes as children and support:

  • Automatic clipping — Content outside the frame bounds is hidden
  • Frame presets — Apply device screen sizes (phone, tablet, desktop) from the Inspector
  • Flex layout — Enable auto-layout to distribute children using CSS Flexbox rules
  • Grid layout — Enable CSS Grid for complex responsive layouts
  • Clip content toggle — Choose whether children are clipped to the frame boundary

Boolean Operations

Varve supports four boolean operations for combining paths and shapes. These are accessible from the Object menu (Ctrl+Alt+U for Union, Ctrl+Alt+S for Subtract, Ctrl+Alt+I for Intersect, Ctrl+Alt+X for Exclude) or from the floating toolbar's boolean flyout when multiple shapes are selected:

  • Union — Combines shapes into a single shape using the union of their areas
  • Subtract — Removes the top shape's area from the bottom shape
  • Intersect — Keeps only the overlapping area
  • Exclude — Keeps non-overlapping areas (XOR)

Boolean operations use polygon-based Greiner-Hormann clipping for accurate results, operating on actual path geometry through adaptive bezier sampling.

Selection and Manipulation

The Select tool (V) is your primary tool for manipulating nodes:

  • Move — Drag selected node(s) to reposition
  • Resize — Drag corner or edge handles
  • Rotate — Drag outside a corner handle
  • Nudge — Arrow keys for 1px, Shift+arrow for 10px
  • Multi-select — Shift+click or marquee drag
  • Auto-reparent — Dragging a node into a container's bounds automatically reparents it
  • Ctrl-bypass — Hold Ctrl during drag to suppress auto-reparenting

Arrange Operations

Control the stacking order of nodes with the Arrange menu or keyboard shortcuts:

  • Bring to FrontCtrl+Shift+]
  • Bring ForwardCtrl+]
  • Send BackwardCtrl+[
  • Send to BackCtrl+Shift+[

Related Guides

Learn about fills, strokes, and effects or text and typography.