The full toolset
Select, rectangle, ellipse, diamond, arrow, line, freehand pen, text, eraser — plus lasso select, laser pointer, and frames in the more-tools menu.
Really hand-drawn
A faithful Swift port of the rough.js renderer — seeded jitter, sketchy ellipses, three sloppiness levels: Architect · Artist · Cartoonist.
Fills & strokes
Hachure, cross-hatch, and solid fills. Solid, dashed, and dotted strokes at any width — the classic Excalidraw swatch palette included.
Text that scales
Resize a text box and the font scales to fit. Four families — hand-drawn, normal, code, fancy — and double-click anywhere to start typing.
Pressure pen
The freehand tool renders perfect-freehand style strokes — width varies with speed, or switch to uniform in the inspector.
Liquid Glass UI
Toolbar and inspector float in macOS 26's native glassEffect — tools top-center, style inspector docked left.
Arrows that bind
Drop an endpoint on any shape and the arrow binds — snapping to the edge and re-routing when either end moves or resizes.
Elbow arrows
The "checker" arrow keeps clean right angles through every reroute. Five arrowhead styles per end: arrow, triangle, dot, bar, none.
Frames & groups
Labeled container frames carry their contents when moved. ⌘G to group, plus align & distribute across any multi-selection.
bring your actual work onto the board ↓
Files as live cards
Press / to Spotlight-search your Mac and drop any file or folder in — real Quick Look thumbnails, modified dates, a Missing badge if it moves.
Obsidian inside
Notes drop in as obsidian:// cards that open straight into your vault. The sidebar shelf keeps vault search one keystroke away.
Web links & images
Paste a URL for a linked card, drag images straight onto the canvas, and Quick Look anything with Space.
Finder native
Right-click any file card to Open or Reveal in Finder. Drag from Finder in; everything stays a real reference, never a copy.
Live code cells
Drop runnable cells in shell, Python, JavaScript, or Ruby right on the board — output renders inline underneath.
Arrows become pipes
Connect two cells and the arrow turns into a data pipe — run the graph and stdout flows into the next cell's stdin.
Paste data, get a chart
Copy rows from anywhere — a spreadsheet, CSV, logs — and ⌘V straight onto the board. A radial wheel pops up: flick to Bar, Line, Scatter, Step… and it lands as a hand-drawn chart.
Links → QR, one click
Turn any link node into a scannable QR code with a single click — drawn in the same sketchy ink as everything else on the board.
Boards in tabs
As many boards as you're thinking about — named, reorderable tabs, each with its own autosave and per-board export.
Three backdrops
Solid white for focus, a light wash that lets the wallpaper breathe, or fully transparent — straight onto the desktop.
Idle / edit dance
Idle, clicks pass through to Finder and your drawings rest on the wallpaper. ⌥⌘W flips the desktop into a live board.
Menu-bar light
No Dock icon, no window. A scribble in the status bar, configurable global hotkeys, autosave to Application Support.
PNG & SVG
Crisp raster or true-vector export, pixel-matched to the canvas — per board, from the tab's right-click menu.
HTML → your agents
Export as HTML hands the whole board to Claude or any coding agent — every shape, label, and connection in a format it can read.
Excalidraw round-trip
Boards read and write the .excalidraw JSON format, so everything interoperates with Excalidraw itself.
Free & open source · 100% Swift · Requires macOS 26