2026-05-26 20:03:13 +00:00
2026-05-26 20:03:13 +00:00
2026-05-26 19:33:30 +00:00
2026-05-24 15:32:36 +00:00
2026-05-24 18:53:24 +00:00
2026-05-24 18:36:09 +00:00
2026-05-24 15:32:36 +00:00
2026-05-24 15:32:36 +00:00
2026-05-24 15:32:36 +00:00
2026-05-26 19:50:28 +00:00
2026-05-24 15:32:36 +00:00

excali

Private self-hosted Excalidraw with Bun and SQLite.

Run locally

bun install
bun run dev

Open http://localhost:3000.

Test

bun run test
bun run typecheck

Build the image

docker build -t excali .
docker run --rm -p 3000:3000 -v "$PWD/excali-box-data:/data" excali

This will make the data persistent in the excali-box-data folder in the current directory, the site will be available at localhost:3000.

Note that this command will bind to ALL interfaces. If you use a rev proxy, you may want to bind to locahost instead, you can do that by setting the HOST environment variable to localhost:

docker run --rm -p 3000:3000 -v "$PWD/excali-box-data:/data" -e HOST=localhost excali