Vanilla Breeze

data-wireframe

Wireframe mode for rapid HTML prototyping. Apply sketch-like rendering with four fidelity levels, dark mode support, and element labeling via a single data attribute.

Overview

The data-wireframe attribute converts any page or container into a sketch-like wireframe. It applies grayscale rendering, dashed borders, and hand-drawn fonts to help focus on layout and structure during prototyping.

Wireframe mode requires the dev CSS bundle. The JS API requires the dev JS bundle.

How It Works

  1. Add data-wireframe to <html> for full-page wireframe, or to any container for scoped wireframing
  2. CSS applies a grayscale filter, replaces fonts with sketch fonts, converts borders to dashed lines, and removes shadows
  3. Four fidelity levels control how abstract the rendering is
  4. Dark mode is supported via data-mode="dark" or system preference

Attributes

Attribute Type Description
data-wireframe string Fidelity level: lo, mid, hi, annotate, or empty (defaults to mid behavior).
data-wf-label string Element label text shown in annotate mode via ::before pseudo-element.
data-wf-annotate boolean Composable annotation layer. Unlike annotate fidelity, this overlays element labels on top of any fidelity level. Uses ::after so it coexists with data-wf-label badges.
data-wf-callout string Design review comment. JS renders a numbered <mark> marker and collects text into a footnote panel.

Fidelity Levels

LevelFontsBordersColorsBest For
lo Redacted Script (scribble) Rough dashed Pure B&W Early concept sketches
mid (default) Flow Block Dashed Grayscale Layout review
hi System fonts Subtle Near-production Content review, stakeholder demos
annotate System fonts Labeled Grayscale + labels Design specs, developer handoff

Element Labels

Add data-wf-label to any element to show a label badge in annotate mode. The JS API can also auto-label elements using their alt text (images) or explicit labels.

Query State

CSS Tokens

Wireframe mode exposes custom properties you can use or override in your own styles.

Keyboard Shortcut

Ctrl+Shift+W (or Cmd+Shift+W on macOS) toggles wireframe mode. This is auto-registered when the dev JS bundle loads.

Grid & Spacing Overlays

Debug overlays that work independently of wireframe mode.

AttributeDescription
data-show-grid12-column grid overlay for layout alignment
data-show-spacingBox-model outline on all elements

Integration with Prototyping Tools

Wireframe mode works seamlessly with other prototyping attributes:

  • data-mock — placeholder media adapts to wireframe tokens (fill, stroke, border)
  • data-lorem — in lo fidelity, placeholder text gets abstract letter-spacing and reduced opacity

See the Prototyping Toolkit page for the full picture.

Accessibility

  • Wireframe mode is a visual-only transformation — the DOM structure and ARIA attributes are preserved
  • Screen readers are unaffected by wireframe rendering
  • Labels use ::before and annotations use ::after pseudo-elements, not injected DOM nodes
  • Callout markers use semantic <mark> elements with aria-label
  • The wireframe indicator badge at the bottom-right corner has pointer-events: none