🔧 Cómo Habilitar Realtime en Supabase - Guía Visual
⚠️ Importante: No es "Stream database changes"
La pantalla que estás viendo es para replicación a destinos externos (BigQuery, Iceberg, etc.), NO es para Realtime.
Realtime es diferente: permite suscribirse a cambios en tiempo real usando WebSockets directamente desde tu aplicación.
✅ Pasos Correctos para Habilitar Realtime
Opción 1: Desde el Dashboard (Más Fácil)
-
Ve a tu proyecto en Supabase Dashboard:
-
Ve a Database → Replication:
- En el menú lateral izquierdo, busca "Database"
- Haz clic en "Replication"
- NO entres a "Stream database changes" (esa es otra cosa)
-
Busca la sección "Realtime":
- Deberías ver una lista de tablas con un toggle/switch para habilitar Realtime
- O busca un botón/tab que diga "Realtime" o "Enable Realtime"
-
Habilita Realtime para estas tablas:
- ✅
Hackathon - ✅
Submission - ✅
Score - ✅
ChallengeEvaluation - ✅
Notification - ✅
Team
- ✅
Opción 2: Desde SQL Editor (Más Rápido)
Si no encuentras la opción en el Dashboard, usa el SQL Editor:
-
Ve a SQL Editor:
- En el menú lateral, busca "SQL Editor"
- Haz clic en "New query"
-
Copia y pega este SQL:
-- Habilitar Realtime para las tablas que necesitamos
ALTER PUBLICATION supabase_realtime ADD TABLE "Hackathon";
ALTER PUBLICATION supabase_realtime ADD TABLE "Submission";
ALTER PUBLICATION supabase_realtime ADD TABLE "Score";
ALTER PUBLICATION supabase_realtime ADD TABLE "ChallengeEvaluation";
ALTER PUBLICATION supabase_realtime ADD TABLE "Notification";
ALTER PUBLICATION supabase_realtime ADD TABLE "Team";
-
Ejecuta el query (botón "Run" o Ctrl+Enter)
-
Verifica que funcionó:
- Deberías ver mensajes de éxito como "Success. No rows returned"
🔍 ¿Dónde Está la Opción de Realtime?
Si no encuentras la opción en "Database → Replication", puede estar en:
Alternativa A: Database → Tables
- Ve a Database → Tables
- Selecciona una tabla (ej:
Hackathon) - Busca una pestaña o sección que diga "Realtime" o "Replication"
- Debería haber un toggle para habilitar Realtime
Alternativa B: Settings → API
- Ve a Settings → API
- Busca una sección sobre "Realtime" o "WebSockets"
- Puede haber configuraciones globales ahí
✅ Verificar que Realtime Está Habilitado
Test con SQL
Ejecuta este query en el SQL Editor:
SELECT
schemaname,
tablename
FROM pg_publication_tables
WHERE pubname = 'supabase_realtime';
Deberías ver las tablas que habilitaste:
- Hackathon
- Submission
- Score
- ChallengeEvaluation
- Notification
- Team
Si no ves ninguna tabla, Realtime no está habilitado.
🐛 Si No Encuentras la Opción
Posible Causa: Plan de Supabase
Realtime está disponible en:
- ✅ Plan Free: Disponible
- ✅ Plan Pro: Disponible
- ✅ Plan Team: Disponible
Si estás en un plan muy básico, puede que no esté disponible.
Solución Alternativa: Usar SQL
Si no encuentras la opción en el Dashboard, siempre puedes usar SQL (Opción 2 arriba). Es la forma más directa y funciona en todos los planes.
📝 Nota Importante
Realtime ≠ Stream database changes
- Realtime: Cambios en tiempo real vía WebSockets (lo que necesitamos)
- Stream database changes: Replicación a BigQuery/Iceberg/etc. (lo que viste en la imagen)
Son dos funcionalidades diferentes. Necesitamos Realtime, no "Stream database changes".
✅ Siguiente Paso
Una vez que hayas habilitado Realtime (usando SQL o el Dashboard):
-
Reinicia tu servidor de desarrollo:
# Detén el servidor (Ctrl+C) y reinicia
pnpm dev -
Abre la consola del navegador (F12)
-
Deberías ver:
[Realtime] Suscrito a Hackathon (realtime-Hackathon-xxxxx) -
Prueba: Actualiza un hackathon y verifica que se actualiza automáticamente
¿Necesitas ayuda para encontrar la opción? Puedo guiarte paso a paso si me dices qué ves en tu Dashboard.