Draw diagrams with your mouse. Get plain text back.
AsciiDraw is a cross-platform desktop app for creating text-based art — diagrams, flow charts, and layouts made of Unicode box-drawing characters. Sketch like in any vector editor; export plain text that fits anywhere a monospace font lives: source code comments, documentation, commit messages, chat.
┌───────────┐
│ Hello │──────┐
└───────────┘ │
▼
┌────────────┐
│ World │
└────────────┘
- Two simple elements — rectangles (with text, borders, fills, alignment) and orthogonal lines (with arrowheads). Text boxes are just borderless rectangles.
- Smart connectors — lines snap to eight connection points per rectangle and stay attached when shapes move or resize, re-routing with the minimum number of segments.
- Three line weights — Normal
─, Bold━, and Double═, with correct junction characters where they cross (┿ ╪ ╂ ╫ ╬). - Layers & groups — restack elements by dragging in the layers panel, group shapes to move them together.
- Full editing — move, resize, multi-select, undo/redo, keyboard nudging, zoom.
- Export anywhere — copy to clipboard, or save as
.txt,.svg,.png. The native.asciidrawformat is readable JSON. - Native & portable — compiled ahead-of-time with no runtime to install, for Windows, macOS (Intel & Apple Silicon), and Linux.
Grab the package for your platform from the
latest release,
unzip, and run AsciiDraw.
Requires the .NET 10 SDK:
git clone https://github.com/michaelliao/asciidraw.git
cd asciidraw
dotnet runReleases are published by the GitHub Actions workflow on v* tags, which
builds NativeAOT binaries for all platforms.
The full guide — tools, connection points, style merging, shortcuts — is at asciidraw.puppylab.org.
Built with Avalonia and rendered with the bundled Maple Mono typeface, so the canvas and every export line up character for character.

