Blog
Practical notes on software, marketing and the systems behind a working product.
Start here: the five settings the editor never asked you for
-
Cursor worktree confusion when the agent edits the wrong folder
You opened the right project, but Agent changed files in a sibling clone or an old export. Git worktrees and duplicate folders make Cursor edit the wrong tree…
Read article -
Cursor taking longer than expected while the agent spins on nothing
The spinner runs for minutes. Usage ticks down. No file changes appear. Agent mode is stuck in context-heavy loops that eat your quota before anything ships.
Read article -
Vercel env vars never reached production after you published
Local builds read .env on your laptop. Vercel production only sees variables you add in the dashboard. Skip that step and auth, Supabase, and Stripe break on the…
Read article -
Lovable supabase saves work in preview but fail on the live URL
Lovable wires Supabase in preview. After publish, saves succeed in the UI but rows never appear, or the live app points at a different project entirely.
Read article -
Your lovable credits hit zero before the app went live
Preview looked done. The credit counter hit zero on auth retries, Stripe wiring, and refactors that fixed nothing. Here is why lovable credits vanish before production and how…
Read article -
You hit the cursor usage limit fixing AI-made bugs
The agent rewrites the same file five times. Your cursor usage limit drops before the original bug is gone. Here is why token-heavy loops burn the pool and…
Read article -
Your supabase anon key is public — that is not the bug
The anon key sits in your frontend source. Anyone can copy it. Security comes from RLS policies and server routes, not from hiding a key that was never…
Read article -
Your Supabase database is public until supabase rls is on
Preview saves feel private. On the live site, anyone with the anon key can list your tables until you enable row level security and write policies.
Read article -
Your live site is still in stripe test mode
Real customers cannot pay because your production build still uses Stripe test keys. Only the magic test card works. Here is how to switch to live mode without…
Read article