Hire Lovable Xperts
Glossary

The Lovable & Supabase glossary

Plain-English definitions of the terms that keep coming up when an AI-built app meets the real world — RLS, service_role keys, hydration errors, credits, and the failure modes in between.

Row-Level Security (RLS)

Row-Level Security (RLS) is a PostgreSQL feature that lets you attach policies to a table so each database role can only see or modify the rows it is allowed to. In Supabase it is the primary mechanism that stops one signed-in user from reading another user's data through the auto-generated API.

Read the definition →

service_role key vs anon key

Supabase projects ship with two API keys. The anon (public) key is safe to use in browser/client code and is fully constrained by Row-Level Security policies. The service_role key bypasses RLS completely and must never reach the browser — it belongs only on a trusted server or in Edge Functions.

Read the definition →

RLS infinite recursion

RLS infinite recursion is the PostgreSQL error "infinite recursion detected in policy for relation". It happens when a Row-Level Security policy on a table runs a subquery against that same table (often to check membership or roles), so evaluating the policy re-triggers the policy.

Read the definition →

Hydration error

A hydration error occurs in React (and frameworks like Next.js) when the HTML rendered on the server does not match what the client renders on first load. React expects the two to be identical so it can "hydrate" — attach event handlers to existing markup — and a mismatch produces a console error and can break interactivity.

Read the definition →

Bug Doom Loop

The Bug Doom Loop describes what happens when you keep asking an AI app builder to fix the same bug: each attempt changes the code, often re-breaking something it previously fixed or introducing a new issue, so you cycle through fix attempts without converging — spending credits and time on every pass.

Read the definition →

Context rot

Context rot is the gradual decline in a large language model's reliability as the conversation or context window gets very long. As more tokens accumulate, the model attends less consistently to earlier instructions and facts, so it starts forgetting constraints, contradicting earlier decisions, or reintroducing problems that were already resolved.

Read the definition →

Lovable credits

Lovable credits are the metered usage units that Lovable's AI app builder consumes as you work. Each prompt or edit you send to the assistant draws down credits from your plan's monthly allowance, so heavy iteration — especially repeated fix attempts on a stubborn bug — uses credits faster.

Read the definition →

Lovable Cloud

Lovable Cloud is Lovable's built-in backend offering, which gives an app a managed database, authentication, and file storage provisioned from inside the Lovable builder so non-technical users don't have to wire up a backend themselves. Under the hood it builds on managed infrastructure (Supabase/Postgres for data and auth).

Read the definition →

Vibe coding

Vibe coding is a style of building software where you describe the result you want to an AI tool in plain language and largely accept the code it generates, instead of writing and reviewing the code line by line. The term was popularised in 2025 to describe AI-first app building.

Read the definition →

Edge Function

An Edge Function is a small piece of server-side code that runs on demand on a serverless, geographically distributed runtime rather than in the browser. In the Supabase/Lovable stack, Edge Functions (Deno-based) are where you put trusted logic — handling webhooks, calling third-party APIs with secret keys, or running operations that need the service_role key safely away from the client.

Read the definition →

Environment variables

Environment variables are key–value settings supplied to an application at runtime rather than hard-coded into its source. They are the standard way to keep secrets — API keys, database URLs, tokens — out of the codebase and to vary configuration between local, staging, and production environments.

Read the definition →