Set up your own house

Free Cloudflare Workers + Supabase Free. You run the household app yourself. The DIY paste lives on this page.

DIY on your own Worker

Want us to host? Managed {handle}.botmymeals.com is coming — subscribe interest later. DIY on your own Worker stays free.

OSS and Grok Bot users deploy Worker bot-my-meals from this repo and open their workers.dev URL or their own domain — not {handle}.botmymeals.com. Do not put a DIY house on the managed pattern.

After cutover, this marketing site lives at botmymeals.com. Tim’s household app is timdoes.botmymeals.com — not this page.

Ask your Grok Bot

Optional. Paste this. Change nothing about Worker name, prices, or store carts.

In this repo the household app is apps/app; migrations are apps/app/supabase/migrations/.

Set up Bot My Meals for our household. Free Cloudflare Workers + Supabase Free only — no localStorage/demo path.

Walk me through, one click at a time if needed:
1) Cloudflare Free → Worker named bot-my-meals via Workers Builds (connect OUR GitHub fork/template of the app repo). Terminal npm run deploy only if I already develop.
2) New Supabase Free project. Run every file in supabase/migrations/ in filename order (SQL editor or supabase db push).
3) Enable Email magic link. Set Site URL to OUR final phone HTTPS URL (our *.workers.dev OR our own domain — not someone else’s site) and Redirect URL to https://<that-host>/auth/callback — before the first magic link.
4) Set only NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY on the Worker/Builds, then redeploy. Never use the service-role key.
5) Give me the HTTPS link, Safari Add to Home Screen, create household Admin, then add my partner (House → People and/or invite code).

Rules: grandma-easy; no invented grocery prices; no store cart-add claims; don’t stop at “try it without Supabase.”

Full grandma-easy steps are in the root README. Apex attach is a dashboard click (docs/domains.md). This page does not flip DNS or replace Worker bot-my-meals.