Backend as a Service
sh0 ofrece un stack BaaS completo en tu propio servidor — base de datos, API, autenticación, tiempo real y funciones — sin dependencia de un proveedor.
¿Qué es BaaS?
Backend as a Service (BaaS) ofrece a los desarrolladores frontend y móviles un backend listo para usar: una base de datos con una API generada automáticamente, autenticación, mensajería en tiempo real y funciones serverless. En lugar de construir y mantener un backend a medida, configuras servicios y los conectas a tu aplicación cliente.
Entre las plataformas BaaS alojadas más populares se encuentran Supabase, Firebase y Appwrite. sh0 lleva las mismas capacidades a tu propia infraestructura — autoalojado, componentes de código abierto, precio fijo y control total.
El stack BaaS de sh0
El BaaS de sh0 se compone de cuatro servicios gestionados, cada uno respaldado por un proyecto de código abierto probado:
| Servicio | Motor | Función |
|---|---|---|
| API PostgREST | PostgREST | API REST generada automáticamente a partir del esquema de PostgreSQL |
| Autenticación | Logto | Autenticación compatible con OIDC, con inicio de sesión social y consola de administración |
| Tiempo real | Centrifugo | Canales WebSocket, presencia y mensajería pub/sub |
| Funciones | Deno | Funciones serverless en TypeScript/JavaScript |
Los cuatro servicios son gestionados por sh0 — aprovisionados con un clic, configurados automáticamente con SSL y conectados a tus servidores de bases de datos PostgreSQL.
Comparación con Supabase y Appwrite
| Función | sh0 | Supabase | Appwrite |
|---|---|---|---|
| Alojamiento | Autoalojado (tu servidor) | Alojado o autoalojado | Alojado o autoalojado |
| API REST | PostgREST | PostgREST | API REST propia |
| Autenticación | Logto (OIDC) | Supabase Auth | Appwrite Auth |
| Tiempo real | Centrifugo | Realtime (Elixir) | Tiempo real (WebSocket) |
| Funciones | Deno | Deno | Varios runtimes |
| Precios | Licencia de tarifa fija | Desde $25/mes (Pro) + cómputo y uso | Cuota del plan y luego excedente |
Fuentes (consultadas el 13 de octubre de 2026): Precios de Supabase· Documentación de Supabase: autoalojamiento con Docker· Precios de Appwrite· Documentación de Appwrite: autoalojamiento
Arquitectura
Cada servicio BaaS se ejecuta como un contenedor gestionado en tu servidor, orquestado por sh0:
- PostgREST se conecta directamente a tu servidor de base de datos PostgreSQL y expone las tablas como endpoints REST.
- Logto se ejecuta como un servidor de autenticación independiente y almacena los datos de los usuarios en una base de datos PostgreSQL que tú controlas.
- Centrifugo se ejecuta como un servidor WebSocket independiente. Tu backend publica mensajes vía HTTP; los clientes se conectan vía WebSocket.
- Deno se ejecuta como un runtime aislado (sandbox) para tus funciones TypeScript, invocadas vía HTTP.
Todos los servicios obtienen SSL automático mediante Caddy, enrutamiento de dominios y monitoreo de salud por parte de sh0. Pueden comunicarse entre sí a través de la red interna de Docker.
Primeros pasos
Para empezar a usar las funciones BaaS, necesitas:
- Una instancia de sh0 en ejecución (consulta Instalación).
- Un servidor de base de datos PostgreSQL (consulta Aprovisionamiento de bases de datos).
- Activa los servicios BaaS que necesites desde el panel de control.
Cada servicio es independiente — activa solo lo que necesites. Empieza con las guías individuales:
- API PostgREST — API REST generada automáticamente
- Autenticación (Logto) — servicio de autenticación gestionado
- Tiempo real (Centrifugo) — mensajería WebSocket
- Funciones (Deno) — TypeScript serverless