Skip to content

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.

Conexiones de base de datos

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 ​

  1. Registras una o más conexiones en la sección Databases del menú lateral.
  2. Al crear un proyecto (o posteriormente desde Settings → Database), seleccionas la conexión adecuada o mantienes la opción No database.
  3. 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.
  4. 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 ​

  1. Crea un proyecto en Supabase (el nivel gratuito es suficiente para iniciar).
  2. En Project Settings → API Keys, copia los siguientes valores:
    • Project URL
    • Publishable key (sb_publishable_… o la clave clásica anon)
    • Secret key (sb_secret_… o service_role)
  3. En Project Settings → Database → Connection string, copia la dirección URI con formato postgresql://….
  4. En AppShark, accede a Databases → Add Connection, ingresa las credenciales y ejecuta Test Connection para verificar la comunicación.
  5. 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 ​

ModoEscrituraLecturaCasos de uso
publicCualquier usuarioCualquier usuarioMuros de comentarios, reseñas abiertas
privatePropietario de la filaPropietario de la filaListas personales, notas, perfiles privados
submitCualquier usuarioRestringida (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.

Documentación de usuario de AppShark