Excaliself vs ExcaliDash
Two self-hosted Excalidraw apps with accounts and live collab. ExcaliDash leads on version history and view-only links; Excaliself on Team space, SSO, and MCP.
ExcaliDash and Excaliself solve the same problem: the Excalidraw editor on your own server, with accounts, a list of drawings, and live collaboration. I maintain Excaliself. I checked ExcaliDash at v0.6.7 (October 2026) in its repository and docs.
Side by side
| Excaliself | ExcaliDash | |
|---|---|---|
| License | MIT | LGPL-3.0 |
| Containers | App and Postgres | Backend, nginx frontend. SQLite by default, or Postgres |
| Sign-in | Accounts with invite links. Google Workspace, Microsoft Entra ID, OIDC | Accounts. OIDC |
| Shared space | One Team space for all members, plus Private | None. Share each drawing or collection with accounts |
| Folders | Nested | Collections, flat |
| Search | Titles and the text inside drawings | Titles |
| Live collab | Built in, with guest links | Built in, with link sharing |
| Share links | Always edit. No expiry | View or edit, with an expiry |
| Comments | Pinned to shapes | None found |
| Version history | No | Snapshots, kept 2 days by default |
| AI | MCP server. Edits wait for Apply | No built-in MCP |
| Excalidraw+ import | Yes, with an API key (beta) | No |
| Images | In Postgres | In the database, or on S3 |
Where ExcaliDash is ahead
- Version history. Open Version History in a drawing, preview a
snapshot, and restore it.
SNAPSHOT_RETENTION_DAYSsets how long snapshots stay (docs). Excaliself has no history: a backup is the only way back. - Finer sharing. Per-account view or edit access on a drawing or a collection, and links that expire (docs). An Excaliself share link always lets people edit, until you stop or regenerate it.
- S3 for images, and scheduled SQLite backups built in.
- A larger community: about 1,800 GitHub stars.
Where Excaliself is ahead
- A Team space. Every member sees every Team drawing and folder with no share step, and Team drawings are always live (Team space). In ExcaliDash, you share each item with each account.
- SSO for whole domains. With
SSO_ALLOWED_DOMAINS, people from your company join on their first Google, Microsoft, or OIDC sign-in, with no invite (Single sign-on). - Comments pinned to shapes, with replies, resolve, and unread dots (Comments).
- MCP. Claude and other MCP clients can find, read, create, and export drawings, and answer comments. Changes to a drawing wait until someone clicks Apply (Connect an AI client).
- Search inside drawings, not only titles.
- Excalidraw+ import of scenes, collections, and images (Import).
- A shared team library saved on the server (Team library).
Running them
Both run with Docker Compose. Excaliself is one app container next to Postgres. It is also a Railway template and a Coolify compose file. Run one Excaliself replica: the live state of each open drawing is in the app’s memory. ExcaliDash’s Socket.IO server has no Redis adapter in the code I read, so I expect the same limit there, but its docs do not say.
Which one?
Pick ExcaliDash if you need version history or view-only links now. Pick Excaliself if your team wants one shared space, SSO for your domain, comments, or an AI client that can draw. To try Excaliself, run:
docker run --rm -p 127.0.0.1:3000:3000 -e PREVIEW_MODE=true ghcr.io/maciekzygmunt/excaliself
and open http://localhost:3000/preview/login. The
comparison of all Excalidraw+ alternatives
also covers Nextcloud Whiteboard.
Excaliself is MIT licensed. The code is on GitHub, and thedocs cover every deploy path and setting.