Tema
Base de datos (Supabase)
AppShark permite generar aplicaciones con un backend completo —base de datos Postgres relacional, autenticación, almacenamiento de archivos y seguridad por filas (RLS)— integrando tu propio proyecto de Supabase (modelo BYOD). La plataforma no administra ni factura tu base de datos: la titularidad de los datos te pertenece íntegramente.

Control total de tus datos
Al eliminar o desvincular un proyecto en AppShark, el esquema de datos en Supabase no se elimina. Si deseas liberar espacio, puedes suprimir el esquema directamente desde el panel de control de Supabase.
Principio de funcionamiento
- Registras una o más conexiones en la sección Databases del menú lateral.
- Al crear un proyecto (o posteriormente desde Settings → Database), seleccionas la conexión adecuada o mantienes la opción No database.
- AppShark genera un esquema de Postgres bajo la convención
proj_seguido del identificador UUID del proyecto (sin guiones), con políticas de seguridad RLS preconfiguradas. - El asistente de IA declara las tablas correspondientes conforme avanza la construcción del sitio.
Las aplicaciones generadas únicamente tienen acceso a la URL del proyecto, la clave pública (publishable key) y el nombre del esquema. La clave secreta y la cadena de conexión permanecen protegidas en el servidor.
Cómo vincular una conexión
- Crea un proyecto en Supabase (el nivel gratuito es suficiente para iniciar).
- En Project Settings → API Keys, copia los siguientes valores:
- Project URL
- Publishable key (
sb_publishable_…o la clave clásicaanon) - Secret key (
sb_secret_…oservice_role)
- En Project Settings → Database → Connection string, copia la dirección URI con formato
postgresql://…. - En AppShark, accede a Databases → Add Connection, ingresa las credenciales y ejecuta Test Connection para verificar la comunicación.
- Para permitir registros de usuarios sin esperas en tus aplicaciones generadas, desactiva la confirmación obligatoria de correo en Supabase desde Authentication → Email.
Es posible almacenar hasta 20 conexiones independientes para reutilizarlas en múltiples proyectos. Al editar una conexión existente, dejar los campos de clave secreta o cadena de conexión en blanco preservará los valores guardados con anterioridad.
Asignación a un proyecto
La opción está disponible en Create → Customize → Database (se habilitará en cuanto configures al menos una conexión). Posteriormente puedes asociar, alternar o retirar la base de datos en Settings → Database. Cambiar de base de datos no elimina los datos preexistentes en el esquema anterior.
Columnas reservadas administradas por el sistema: id, created_at y, en tablas privadas, user_id. No es necesario declararlas manualmente.
Modos de acceso y seguridad de tablas
| Modo | Escritura | Lectura | Casos de uso |
|---|---|---|---|
| public | Cualquier usuario | Cualquier usuario | Muros de comentarios, reseñas abiertas |
| private | Propietario de la fila | Propietario de la fila | Listas personales, notas, perfiles privados |
| submit | Cualquier usuario | Restringida (inaccesible con clave pública) | Formularios de contacto, registros de prospectos |
Evita el modo public en formularios privados
La clave pública viaja expuesta en el código JavaScript de la aplicación web. El modo public permite que cualquier visitante lea o modifique los registros. Para recopilación de datos privados utiliza submit, lo cual te permitirá consultar las respuestas directamente en tu panel de Supabase mediante la clave de servicio protegida.
Puedes solicitar al asistente de IA que modifique el modo de acceso de una tabla en cualquier momento: las políticas RLS se actualizarán sin alterar los registros existentes. Considera que cambiar una tabla a modo private requerirá asignar identificadores user_id a las filas previas para que continúen siendo visibles desde la aplicación de usuario.
Diagnóstico y resolución de incidencias
- Comprueba que el proyecto en Supabase se encuentre activo y no haya entrado en pausa por inactividad.
- Verifica que la URL, las claves y la cadena de conexión estén completas (asegúrate de codificar caracteres especiales en la contraseña si fuese necesario).
- Si la conexión directa presenta dificultades, intenta utilizar la cadena provista por el Session pooler de Supabase.
- En tablas con modalidad submit, es normal y esperado que la aplicación frontal no muestre el listado de respuestas.
- Confirma que la base de datos se encuentre correctamente asignada al proyecto y que tu suscripción incluya dicha funcionalidad.