589ad162f9
Adjusts the CSS and SVG dimensions of the custom sidebar toggle button so that it identically matches the 36x36px Excalidraw UI native buttons (like the Help button) in both Light and Dark themes. The inner SVG icon was precisely aligned to be 16x16px and use a 1.8px stroke to match the weight and left-alignment of the native icons. The .secondary-button class padding that was interfering was removed.
excali-box
Private self-hosted Excalidraw with Bun, Caddy, and SQLite.
This is bare wrapper around the excalidraw packages that adds autosave and disk-persistence. No auth to keep things simple - you either run in a private network or put it behind Caddy auth or similar solutions.
GPT 5.5 generated
Pull from GHCR and run
Images are published to:
ghcr.io/ruinivist/excalidraw-box:<version>
docker pull ghcr.io/ruinivist/excalidraw-box:latest
docker run --rm -p 127.0.0.1:3000:80 -v "$PWD/excali-box-data:/data" ghcr.io/ruinivist/excalidraw-box:latest
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 127.0.0.1:3000:80 -v "$PWD/excali-box-data:/data" excali
This will make the data persistent in the excali-box-data folder in the current directory, with Caddy serving the browser build on localhost:3000