Studio4 min

Excalidraw-Style Whiteboard in the Browser: Draw, Erase, Export

A privacy-first whiteboard for sketches, diagrams, and quick collaboration notes. All strokes stay on your device; export to PNG or SVG.

Zro7 Whiteboard renders strokes on an HTML5 canvas in your browser. No drawings are uploaded, synced, or logged.

To sketch privately, open Zro7 Whiteboard — a Canvas-based drawing surface with pen, eraser, shapes, and text. Everything renders locally; export as PNG or SVG when you're done.

Why not just use Excalidraw?

Excalidraw is excellent — and open source — but the hosted excalidraw.com stores your board on their servers when you share, and any collaboration flows through their backend. Zro7 is single-player and 100% client-side; use it when the diagram itself is sensitive (architecture whiteboards, incident sketches, product roadmaps).

Features

  • Freehand pen with pressure smoothing.
  • Shapes: rectangle, ellipse, line, arrow.
  • Text with basic font size and color.
  • Undo / redo (Ctrl+Z / Ctrl+Shift+Z).
  • Export PNG (raster) or SVG (vector, editable in Illustrator/Inkscape).

Rendering approach

Strokes are stored as a list of points with time-domain smoothing; on redraw, they're rendered to a <canvas>. Because the source data is a small JSON of primitives, exporting to SVG is straightforward — each shape maps to an SVG element.

Steps

  1. Open Whiteboard.
  2. Draw with pen, eraser, or shapes.
  3. Add text where needed.
  4. Export as PNG for screenshots or SVG for editing.

Frequently asked questions

Is real-time collaboration supported?

No — collaboration requires a server. Zro7 is single-player by design.

Can I import an image to annotate?

Yes — drop an image and draw on top; it exports flattened.

Does it save my board?

It autosaves to localStorage in your browser only; clear the browser to erase.

SVG or PNG for print?

SVG — it stays crisp at any DPI.

Any keyboard shortcuts?

Yes — 1–5 to switch tools, Ctrl+Z / Ctrl+Shift+Z for undo/redo, Del for selection.

Related posts

← Back to blog