The error library
Stuck on an error message? These pages explain the errors we see most in AI-built and half-finished apps. Each one covers what the error means, why it happens and how to fix it. They are free to read and use.
No match for ''. Paste the full error, or get a $149 diagnosis and we will find it.
Get a $149 diagnosisDeploy, domains and hosting
- ERR_TOO_MANY_REDIRECTS after adding Cloudflare: Why a site behind Cloudflare loops with ERR_TOO_MANY_REDIRECTS and how SSL/TLS mode causes it.
- Cloudflare Error 1101: Rendering error (Worker exception): Why Cloudflare shows Error 1101 and how to find the Worker exception.
- CORS error after deploy: Access-Control-Allow-Origin missing: Why API calls fail with a CORS error only after deploying to a real domain, and how to fix the server response.
- Symptom: mixed content blocked on HTTPS site: Why images, scripts or API calls fail on an HTTPS site because they use http:// URLs, and the fix.
- SPA 404 on refresh: Vercel, Netlify, Cloudflare Pages: Why a React/Vite single-page app returns 404 when you refresh a route, and the rewrite rule each host needs.
- Symptom: CORS error calling Supabase Edge Function: Why browser calls to a Supabase Edge Function fail with CORS and how to add CORS headers.
- Vercel FUNCTION_INVOCATION_FAILED (500): Why Vercel functions fail with FUNCTION_INVOCATION_FAILED and how to debug them.
- Vercel FUNCTION_INVOCATION_TIMEOUT (504 Gateway Timeout): Why Vercel functions time out with FUNCTION_INVOCATION_TIMEOUT and what to check.
Build errors
- Symptom: env vars undefined after Cloudflare Pages build: Why environment variables are undefined after deploying to Cloudflare Pages, and how to set them for the build.
- Next.js: React client hook in a Server Component: Why Next.js errors when useState or useEffect is used in a Server Component, and the fix.
- Next.js DynamicServerError: Dynamic Server Usage: Why next build throws DynamicServerError when cookies() or headers() lose their async context, and the fix.
- Next.js hydration error: Text content does not match server-rendered HTML: Cause and fix for React hydration mismatch errors in Next.js apps.
- Next.js next/image un-configured host: Why next/image rejects a remote image URL and how to configure images.remotePatterns.
- Next.js Module not found (Can't resolve): Common causes of 'Module not found' in Next.js builds and how to fix them.
- Next.js env var undefined in the browser: missing NEXT_PUBLIC_: Why Next.js env vars are undefined in client code and how NEXT_PUBLIC_ works.
- Next.js prerender error during build: Why next build fails while prerendering a page and how to find the cause.
- Error: supabaseUrl is required. (Vite env var missing VITE_ prefix, blank screen in production): Why a Vite app shows a blank screen in production when env vars lack the VITE_ prefix, and how to fix it.
Auth and sign-in
- Symptom: auth breaks on custom domain: Supabase Auth / Clerk redirect and cookie mismatch: Why sign-in redirects to localhost or the session disappears after moving to a custom domain, and how to configure Supabase Auth and Clerk.
- Clerk: auth() was called but Clerk can't detect usage of clerkMiddleware(): Why Clerk can't detect clerkMiddleware() in Next.js and how to fix the middleware file.
- Firebase auth/unauthorized-domain: Why Firebase sign-in fails with auth/unauthorized-domain on a custom domain and how to authorize it.
- OAuth redirect_uri_mismatch (Google sign-in): Why Google sign-in fails with redirect_uri_mismatch after moving to a custom domain, and how to fix it.
- Supabase Auth: email_not_confirmed: Why Supabase sign-in fails with email_not_confirmed and how to fix confirmation emails.
- Supabase Auth: invalid_credentials: Why Supabase sign-in returns invalid_credentials and what to check.
- Supabase Auth: over_email_send_rate_limit: Why Supabase stops sending auth emails with over_email_send_rate_limit and how to fix it for production.
Stripe and payments
- Stripe resource_missing: The ID provided isn't valid: Why Stripe returns resource_missing for a price, customer or product ID, and how to fix it.
- Stripe: Webhook payload must be provided as a string or a Buffer (raw body): Why stripe-node rejects a parsed JSON webhook body and how to pass the raw body.
- Stripe webhook signature verification failed: fix: Cause and fix for Stripe's 'No signatures found matching the expected signature for payload' webhook error.
Database and data access
- Symptom: Firestore permission denied by Security Rules: Why Firestore requests are denied by Security Rules and how to write rules that allow your users.
- Prisma Client on the edge runtime / bundled for the browser: Why Prisma throws 'unable to run in this browser environment' in Next.js or edge functions, and how to fix it.
- Supabase RLS: empty results or 'new row violates row-level security policy': Why Supabase queries return [] or error 42501 with Row Level Security enabled, and how to add correct policies.
Get a $149 diagnosis See pricing
- Fixed, or we keep working free until it is (within the written scope).
- A human reviews every fix before it ships.
- read-only access; fixes arrive as pull requests you merge
- Your $149 diagnosis is credited in full toward any paid job.
FAQ
Are these pages free?
Yes. Read and use them as you like.
I followed the page and it's still broken. What now?
Book a $149 diagnosis. The $149 is credited toward any paid job.
My error isn't listed.
Start with a diagnosis, or check back as we add pages.
Do you publish my error?
No. We only publish anonymized cases with your explicit consent.