# draw.io / Excalidraw

Diagrams you host. diagrams.net (draw.io) is Apache-2.0; Excalidraw is MIT — Lucidchart without the seat.

**Replaces:** Lucidchart

**Tier:** Easy

## Problem

Lucidchart sells a diagram seat. You wanted boxes, arrows, and a file you can export. diagrams.net (draw.io) is Apache-2.0 and self-hostable. Excalidraw is the MIT whiteboard already on /stacks/excalidraw-whiteboard — use it if the job is a sketch board, not a formal diagram.

## Stack

- [diagrams.net](https://www.drawio.com) — Apache-2.0 diagrams (draw.io)
- [Excalidraw](https://excalidraw.com) — MIT whiteboard if the job is a sketch

## Estimated SaaS cost saved

| You stop paying | Typical / year | Self-host instead |
|---|---:|---|
| Lucidchart (small team) | $1,200 | diagrams.net or Excalidraw |

**About $1,200 / year** on a small team, before you count lock-in.

## Deploy on Railway

Placeholder: diagrams.net (jgraph/docker-drawio) plus a volume if you persist .drawio files, or reuse Excalidraw on /stacks/excalidraw-whiteboard. No one-click template in this repo yet — Start on Railway.

[Start on Railway](https://c17.io/go/railway/diagrams-net?from=%2Fstacks%2Fdiagrams-net.md)

[Excalidraw if this is a whiteboard, not a diagram file](https://c17.io/stacks/excalidraw-whiteboard)

## AGENT_PROMPT

```
Replace Lucidchart with self-hosted diagrams.net (preferred) or Excalidraw.

- diagrams.net: official Docker image, persist files on a volume or export .drawio/.svg. Bind HTTP to 0.0.0.0:$PORT.
- Excalidraw if people want a whiteboard, not a Visio-shaped diagram. That stack is /stacks/excalidraw-whiteboard.
- Export one live chart. Write AGENT_PROMPT.md. Do not claim Lucidchart import parity you have not tested.
```

## FAQ

### draw.io or Excalidraw?

diagrams.net if you need UML, flowcharts, and a .drawio file. Excalidraw if the meeting is a sketch. Miro-shaped boards stay on /replace/miro.

Source: https://c17.io/stacks/diagrams-net
