Web Dev Tools

Whiteboards & Infinite Canvas

Drawing, sketching, and infinite-canvas UIs (Figma-flavored).

This category exploded with the rise of AI-flavored canvas products and collaborative tools. The clear winner for "drop in a whiteboard" use cases is tldraw.

Whiteboard / canvas products as components

  • tldraw — drop-in React whiteboard component. Pen / shapes / text / arrows / images / multiplayer / extension API. The default for "I need a whiteboard in my app." MIT for personal / non-commercial; commercial use requires a (very affordable) license — verify your case.
  • Excalidraw — open source, hand-drawn-style whiteboard; embed via @excalidraw/excalidraw. MIT, fully free for any use.
  • Konva + react-konva — 2D canvas framework; build your own canvas product on top.
  • Fabric.js — older 2D canvas library; plenty of demos for Photoshop-like editors.
  • Paper.js — vector drawing; great for sketching apps.

Drawing primitives

  • perfect-freehand — the freehand-stroke math (<pencil> strokes that feel natural). Underpins tldraw and many similar.
  • rough.js — hand-drawn / sketchy style rendering; underpins Excalidraw.
  • D3 Selection + canvas — for custom data-driven canvas.

Math / interactive

  • Mafs — React components for visualizing math (number lines, vectors, plots) on a canvas.
  • JSXGraph — interactive geometry / function plotting.

Multiplayer canvas

  • tldraw sync + Liveblocks / PartyKit — the typical tldraw multiplayer setup.
  • Yjs — CRDT layer underneath most collaborative canvases.
  • See Realtime for the providers.

High-perf rendering for huge canvases

  • PixiJS — WebGL/WebGPU 2D renderer; if your canvas has 10,000+ shapes.
  • Konva — lower perf ceiling but easier API.
  • Custom WebGL — when you really need it (Figma-tier).

Pick this if…

  • Default whiteboard, accept the license: tldraw.
  • Need fully free, MIT, hand-drawn style: Excalidraw.
  • Building your own bespoke canvas product: Konva (mid-perf) or PixiJS (high-perf).
  • Math / graph plotting: Mafs or JSXGraph.
  • Need multiplayer: tldraw + Liveblocks / PartyKit (or Yjs DIY).

On this page