Works from anywhere, no Tailscale needed. The pages are public, but nothing in a box opens without the passphrase.
box-redirect checks the passphrase and hands out files. The files live in an R2 bucket (boxes-files), one folder per box; the search index lives in KV.| What you see | What to do |
|---|---|
| Green Running at the top of this page, and boxes open with their files | All good. |
| It keeps asking for the passphrase, or the top of this page says the saved passphrase no longer works | The passphrase was changed. It is the BOX_AUTH_TOKEN secret on the box-redirect Worker (Cloudflare dashboard → Workers & Pages → box-redirect → Settings). Cloudflare can't show it again, only replace it — if you've forgotten it, set a new one there. |
| Files won't load and you see rate_limited or too_many_unauthorized | Too many requests, or too many wrong passphrases, from one address. Wait 10 minutes. |
| This page says Not answering | The Worker is down or was removed. Check it in the Cloudflare dashboard; to put it back, deploy cloudflare_worker.js from the project folder as box-redirect, with the R2 bucket bound as BOX_R2, the KV namespace as BOX_KV and the passphrase as BOX_AUTH_TOKEN. |
| No page at all at boxes.1000600.xyz | The site or the domain is the problem, not your boxes. Check Workers & Pages and the DNS for 1000600.xyz in the Cloudflare dashboard. |
~/Projects/boxes, run node backup.js. It downloads every file and the search index into boxes-backup-YYYY-MM-DD.tar.gz in that folder. It needs the Cloudflare keys in .env.~/Projects/boxes on the Mac — CLAUDE.md explains how it fits together.github.com/zzpy20/boxes (public — never put passwords in it).box-redirect, the R2 bucket boxes-files, the KV namespace bound as BOX_KV, and the site itself.backup.js live in .env on the Mac, not on GitHub.server.js, docker-compose.yml, setup.sh), storing files on that server's disk instead.