Hosted bloom calendars for bloomcal.haleymaddox.com. Anyone who builds a bloom calendar with Haley Maddox’s builder can publish it as a page with its own link, nearly free. Gardeners can also add plants that aren’t in Haley’s 30: AI drafts the card for their own calendar, and Haley reviews it before it joins the plant list for everyone.
Design and decisions: Garden Pages › HostedCalendars (https://claude.ai/artifact/WvWNp6b8JRfKQh2E8qccRt).
Setup only. Nothing is live, and no Cloudflare account is connected yet. The first test runs at bloomcal.haleymaddox.com for a few friends, behind one shared password.
docs/: the pages people see. GitHub Pages serves this folder from main, and docs/CNAME holds the custom domain.functions/: the publish service (Cloudflare Pages Functions).wrangler.toml: the Cloudflare settings. The database (Cloudflare D1) is added once the
account exists.scripts/check-privacy.mjs: the same privacy check as haleymaddox.com.The domain stays at DreamHost. bloomcal gets one DNS record there pointing to Cloudflare, and haleymaddox.com itself doesn’t change.
npm ci
npm run check # privacy check
npm run dev # local preview at http://localhost:8788
Every change is a PR that Haley approves. See CLAUDE.md.