The errors that trip up people building with Cursor, Lovable, Bolt, Replit and v0, each with what it means, why it happens, and how to fix it.
Your code tried to use something (like .map or .name) on a value that doesn't exist yet.
The browser blocked your request because the server you called didn't say your site is allowed to read its response.
The page Next.js rendered on the server looked different from what React rendered in the browser.
Your code imports a file or package that the build tool can't find.
Supabase's security rules (RLS) blocked your insert or update because no policy allows it.
Your app failed to build on Vercel. The real error is a few lines above this message in the build log.
Your app can't see an environment variable, usually because of its name, where it's defined, or when it was loaded.
OpenAI rejected the key your app sent: it's missing, wrong, revoked, or not being loaded.
A React hook (useState, useEffect…) is being called inside an if, a loop, or after an early return.
The Prisma client code hasn't been generated from your schema, so your app has nothing to import.
Prisma couldn't connect to your database: the URL, network, or connection mode is wrong.
Your code expected JSON from a request but got an HTML page back, usually an error or 404 page.
You tried to put a whole object straight into JSX. React can only render text, numbers, elements, or arrays of them.
When you render a list with .map(), React needs a stable, unique key on each item to track them.
Your component sets state while rendering, which causes another render, which sets state again, forever.
Don't see yours? Paste your error and get a plain-English explanation free.