DATABASE_URL | sí | Cadena de conexión a MySQL/MariaDB que usa el adapter de Prisma. | La app no arranca. |
AUTH_SECRET | sí | Secreto usado por NextAuth para firmar el JWT de sesión. | La app no arranca. |
NEXTAUTH_URL | sí | URL base de la aplicación, usada por NextAuth para construir callbacks y redirecciones. | Los callbacks de autenticación quedan rotos. |
NEXT_PUBLIC_SITE_URL | sí en producción | Origen canónico público: lo usan el sitemap, robots.txt y los metadatos Open Graph para construir URLs absolutas. Si falta, se cae a NEXTAUTH_URL y, en último caso, a un origen por defecto. | El sitemap y las tarjetas Open Graph pueden mostrar una URL incorrecta. |
AUTH_GOOGLE_ID / AUTH_GOOGLE_SECRET | no | Credenciales del cliente OAuth de Google para el login social. | El provider de Google no se registra en NextAuth. |
AUTH_GOOGLE_CALLBACK_URL | no | URI de redirección del cliente OAuth de Google; debe coincidir con la configurada en la consola de Google. | — |
RESEND_API_KEY / RESEND_FROM | no | Credenciales y remitente para enviar notificaciones por email vía Resend. | El canal de email queda SKIPPED (el inbox in-app sigue funcionando). |
VAPID_PUBLIC_KEY / VAPID_PRIVATE_KEY / VAPID_SUBJECT | no | Claves VAPID y contacto del remitente para notificaciones push web. VAPID_SUBJECT es un mailto: de contacto. | El canal push queda SKIPPED. |
OPENAI_API_KEY / OPENAI_MODEL | no | Credenciales y modelo usados por /api/search/interpret para interpretar búsquedas en lenguaje natural. | El endpoint usa reglas locales y un fallback por palabras clave en vez de OpenAI. |
MATCH_SYSTEM | no | Elige el sistema de contacto: camellapp (formulario + matchmaking) o link (WhatsApp wa.me). Default: camellapp. | Se usa el default camellapp. |
WHATSAPP_CONTACT | solo en modo link | Número de WhatsApp de contacto para el modo link: solo dígitos, con código de país incluido. | — |