Demo:
One click to deploy your excalidraw with collaboration.
Snapshot:
Related docs:
Clone, and run:
git clone git@github.com:alswl/excalidraw-collaboration.git
cd excalidraw-collaboration/basic
docker-compose up # run the containers
open "http://localhost" # open browser, and you can using the collbration functions
Browse it:
Live Collaboration
button, and you will see the collaboration pageAbout public network release:
if you want to release your own excalidraw in public network,
you should modify the docker-compose.yaml
file,
Replace the VITE_APP_HTTP_STORAGE_BACKEND_URL
and VITE_APP_WS_SERVER_URL
with your own domain.
Features:
A configurable docker-compose example for a traefik setup can be found here:
https://github.com/Someone0nEarth/excalidraw-self-hosted
REACT_APP_
env with VITE_APP_
The docker-compose.yaml
file is for local deploy, if you want to deploy on the cloud,
you should prepare 2 Load Balancer(with HTTPS cert), one for websocket server, one for storage server.
The VITE_APP_HTTP_STORAGE_BACKEND_URL
is for the Load Balancer URL(HTTPS) for storage,
and the VITE_APP_WS_SERVER_URL
is for the Load Balancer URL(HTTPS) for websocket.
Here is a conversation about how to deploy on the aws: https://github.com/alswl/excalidraw-collaboration/issues/22
Error message:
TypeError: Cannot read properties of undefined (reading 'generateKey')
Why: The excalidraw is using crypto module of Javascript, the HTTPS is required.
How to solve: use HTTPS to access the page, or use http://localhost instead.