Sharing a board for live collaboration is a one-time wizard run by the board owner. It connects your Cloudflare account, creates the room service there, and shares the open board — usually in under a minute.
Before you start
- A GreenLight PRO license (creates up to 3 shared boards in total) or the yearly PRO Team plan (unlimited). See Plans, Limits and Costs.
- A Cloudflare account. The free plan is enough — create one at cloudflare.com if you don’t have one. Only you, the owner, need it.
- The board you want to share, open in the app. Images and videos are fine; every media file on the board is uploaded to your Cloudflare storage during setup (50 MB per file maximum).
Run the wizard
- Open the board and click Collaborate (the people icon) in the top bar.
- The dialog opens on Collaborate on “your board”. Read the three promises — your data stays in your own Cloudflare account, it’s free for most teams, only you need an account — and click Set up collaboration.

- Connect your Cloudflare account. Create an API token at dash.cloudflare.com → My Profile → API Tokens → Create Token → Custom token, with three Account permissions:
- Workers Scripts: Edit
- Workers R2 Storage: Edit
- D1: Edit
This is the same token that private live-link sharing uses — if you already created one for that, paste it here. Paste the token and click Continue. If the token can reach several Cloudflare accounts, the wizard asks which one to use.

- Watch the What gets created rail fill in on the left: Verify API token → Find Cloudflare account → Create media storage → Deploy room service → Enable realtime rooms → Create access secret → Enable room URL → Share this board. When the last step turns green, the dialog switches to the Collaboration panel with the connection strip reading Connected — the board is shared.
That’s it. Next, invite people.
What the wizard created
Everything lands in your Cloudflare account, and nothing on GreenLight’s servers:
| In Cloudflare | What it is |
|---|---|
Worker moodboard-collab | The room service. Each shared board is one room inside it, holding the board state, members, invites, sessions and an audit log. Its public address is https://moodboard-collab.<your-subdomain>.workers.dev. |
R2 bucket moodboard-shares | Media storage for shared boards (and, if you use it, for private live-link sharing — the bucket is shared). Files are stored once per unique file under collab/<board>/assets/…. |
| A Worker secret | The provisioning key the app uses to create rooms. Generated once and preserved on every later update. |
On your machine, the app remembers the room service URL, the provisioning key, and the Cloudflare API token — in the macOS Keychain or Windows credential store, never in a plain settings file. The token is kept so that later worker updates don’t ask for it again.
Sharing your next board
The room service is created once per machine, not once per board. The next time you click Set up collaboration on another board, the wizard skips straight to Share this board — no token, no Cloudflare steps.
If setup hits a snag
The wizard never leaves things half-done: if a step fails, whatever was created for the board is cleaned up again and the step is marked ✕. Fix the cause and click Try again.
- Verify API token fails — the token is wrong, expired, or missing one of the three permissions above.
- Enable room URL says Account has no workers.dev subdomain — open Workers & Pages in the Cloudflare dashboard once; Cloudflare creates your
workers.devsubdomain on the first visit. Then retry. - Verify the room answers shows a warning — a brand-new subdomain can take a minute to propagate. Wait and retry.
- Media upload failed on card “…” — the card’s source file is missing from the board folder. Fix or remove that card and retry. (Missing proxies and thumbnails are fine; they’re simply left out of the shared copy.)
- A file over 50 MB can’t be shared. Replace it with a smaller version or remove it from the board.
Advanced: pointing at your own deployment
If you deploy the room Worker yourself (the source ships in the cloudflare-share/collab-spike directory of the project repository), click Advanced on the token step and fill in the Room worker URL and Provisioning key instead of a token. The URL must be https and publicly reachable — private and local network addresses are refused. Whatever pair works is remembered for your next board, exactly like the wizard’s own.
Leave a Reply