A free, browser-based whiteboard for driving scenarios.
No install. No account.
🎬 Play a live scenario | 🎨 Start drawing | 📖 Docs | 💬 Issues
Two modes, one canvas:
- 🎨 Scene mode — draw the scene. Topology-aware lanes, vehicles, and intersections. Export figures (SVG / PDF) or maps (OpenDRIVE, Lanelet2).
- 🎬 Scenario mode — make it move. Add events and triggers, press play — esmini-WASM runs it in the browser, PASS / FAIL verdict included.
- Topology-aware lanes — connections follow when you edit
- Lane tool — click a centerline, get both boundaries
- Map → lanes — trace real roads from satellite/OSM data
- Intersection & roundabout templates — one click
- Vehicles, pedestrians, signs, and more — a full driving-domain library
- Snap & point sharing — geometry stays connected
- Path footprints — auto-placed and style-synced
- Math (LaTeX) — typeset equations on the canvas
- Re-editable saves —
.drawtonomy.svgreopens with everything intact
📖 Feature tour with demo videos · docs.drawtonomy.com
Start from a blank scene or an imported one, add events and triggers, and author a full OpenSCENARIO storyboard yourself.
- Visual authoring — phases, events, actions, and triggers on the scene you drew
- Open and edit any
.xosc— from disk or a GitHub URL, fully editable - Full playback — seek, Follow Ego, ghost trails,
.webmexport - PASS / FAIL verdicts on every run
- esmini-ready export —
.xodr+.xosczip for desktop esmini
Any public .xosc on GitHub runs with one click:
Play a live scenario.
The drawtonomy for GitHub
extension plays them right where they live:
OpenDRIVE, Lanelet2, OpenSCENARIO, ROS maps, and figures like SVG/PDF. → Full format table · export formats reference
- AI Scene Generator — generate scenes from natural language or OpenSCENARIO XML — by @vishwesh5
- MCP Server — let AI agents draw scenes for you
- Headless SDK — generate and export scenes from Node.js, no browser
Browser-only. No backend, no account, no telemetry — files never leave your browser, even the esmini engine runs locally as WebAssembly. (details)
An iframe-based extension system with an SDK and postMessage API:
pnpm add -g @drawtonomy/dev-server
drawtonomy-dev-server
# then open http://localhost:3000/?ext=http://localhost:3001/manifest.json📖 Extending drawtonomy · Extension guide · Exporter guide
- 🎞️ Feature tour
- ⌨️ Keyboard shortcuts
- ⚖️ Comparisons
- 💡 Use cases
- ❓ FAQ

