Comparación: PgArachne vs. PostgREST

CaracterísticaPgArachne (+ Funciones Universales)PostgREST
Velocidad de configuraciónAlta. Las funciones universales permiten CRUD instantáneo similar a PostgREST.Alta. Genera automáticamente endpoints para todas las tablas.
Flexibilidad lógicaIlimitada. Capacidad de combinar CRUD universal con funciones RPC específicas.Limitada. La mayor parte de la lógica debe residir en filtros de URL o Vistas de Base de Datos.
Manejo de esquemasNativo. Acceso vía esquema.función.Plano/Global. Requiere cambiar perfiles en los encabezados HTTP para cambiar de esquema.
AbstracciónOpcional. Puede exponer datos directamente (proxy) o encapsularlos de forma segura.Baja. La API es esencialmente un espejo del esquema de la base de datos.
Listo para IA y LLMExtrema. JSON-RPC y capacidad de definir funciones «Tool» específicamente para agentes de IA.Media. La IA tiene que luchar con una sintaxis estricta de parámetros URL.
Archivos estáticosSí. Sirve HTML/JS/CSS directamente desde un único binario.No. Debe configurar y gestionar un Nginx externo delante de él.
Tiempo real (SSE)Sí. Endpoint SSE integrado para PostgreSQL NOTIFY.No. Requiere wiring propio (LISTEN/NOTIFY + servicio separado).
Soporte Multi-Base de DatosA nivel de servidor (N:1). Una sola instancia de PgArachne se conecta al servidor (IP:Puerto) y puede servir todas las bases de datos alojadas allí.Por base de datos (1:1). Una instancia está vinculada a una base de datos específica. Servir múltiples bases de datos requiere ejecutar múltiples instancias en diferentes puertos.
AutenticaciónJWT y Claves API. Soporta nativamente ambos mundos.Principalmente JWT.
Rate limitingSí. Límite de login integrado (configurable).No. Requiere proxy o middleware externo.

¿Por qué «PgArachne Híbrido» es el ganador?

Gracias a las Funciones Universales (que actúan como un emulador), obtiene lo mejor de ambos mundos:

  • Fase de Inicio (MVP): Despliegue PgArachne con unas pocas funciones proxy (como las de universal_table_access.sql) y en minutos tendrá una API funcional para todas las tablas. En esta etapa, se comporta exactamente como PostgREST.
  • Fase de Producción: A medida que la aplicación crece, comience a escribir funciones dedicadas para operaciones sensibles (ej. process_payment). Esto aumenta la seguridad y el rendimiento sin cambiar el stack tecnológico subyacente.
  • Frontend e IA: Al mismo tiempo, su aplicación se ejecuta en el mismo puerto que la API (gracias al servicio de archivos estáticos), y los agentes de IA pueden llamar a sus funciones directamente vía JSON-RPC.

Nota: Las «Funciones Universales» son un conjunto de funciones estándar PL/pgSQL que puede agregar a su base de datos para habilitar operaciones genéricas de Lectura, Creación, Actualización y Eliminación en cualquier tabla.