sparrow
Plataforma auto-alojada de entrega de webhooks con reintentos, firmas HMAC/Ed25519, transformaciones Go-template y seguimiento de salud. Arquitectura simplificada basada en PostgreSQL y River sin dependencias externas como Redis.
Ficha actualizada 27 sept 2026, 11:38 · upstream 27 sept 2026, 9:57 · release v0.5.15
Qué es sparrow
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Sparrow es una plataforma de entrega de webhooks auto-alojada diseñada para equipos que requieren infraestructura fiable sin depender de servicios de terceros. Permite registrar tipos de eventos, adjuntar webhooks y empujar eventos, delegando el trabajo asíncrono de fan-out, reintentos, firmas y seguimiento de salud a la plataforma.
La arquitectura se basa en un único servidor Go con una interfaz gráfica embebida en Svelte. PostgreSQL es la única dependencia requerida; River gestiona la cola de trabajos dentro de la misma base de datos, eliminando la necesidad de brokers o colas adicionales como Redis. El modelo operativo simplificado reduce la complejidad de mantenimiento.
Ofrece capacidades avanzadas de seguridad incluyendo cifrado en reposo con AES-256-GCM para secretos y encabezados sensibles, protección contra SSRF por defecto y soporte para autenticación opcional mediante API keys. Incluye un portal de autogestión para consumidores que permite a los clientes registrar sus propios endpoints de forma segura.
- Infraestructura auto-alojada para sistemas internos o backends de productos que requieren garantías de entrega y reintentos automáticos sin construir la lógica desde cero
- Portal de autogestión para consumidores donde los clientes necesitan registrar sus propios endpoints, inspeccionar entregas y reintentar fallos con aislamiento por consumidor
- Transformación de payloads mediante plantillas Go-template por suscripción para adaptar el contenido del evento a cada consumidor específico antes del envío
- Seguimiento de salud de webhooks con estados saludables/degradados/no saludables, resúmenes rodantes e historial completo de entregas para monitoreo operativo
- Modelo operativo simplificado con una sola base de datos PostgreSQL y un único binario Go, eliminando dependencias externas como Redis o brokers de colas
- Criptografía robusta con firmas HMAC-SHA256 y Ed25519 en formato Standard Webhooks, más cifrado AES-256-GCM para secretos y encabezados sensibles en reposo
- Validación de esquemas suave que genera advertencias para payloads inválidos en lugar de descartarlos automáticamente, permitiendo inspección manual
- API OpenAPI-first con documentación interactiva integrada en el servidor REST y especificación versionada en el repositorio
- La interfaz gráfica embebida se sirve sin autenticación por defecto; requiere proxy inverso con SSO o API keys para entornos expuestos a internet
- El cifrado en reposo depende de claves que deben almacenarse externamente y respaldarse; su pérdida hace irrecoverables los secretos cifrados
- La exportación de telemetría OpenTelemetry está desactivada por defecto y requiere configuración manual del endpoint OTLP para habilitar trazas y métricas
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Usar la imagen Docker oficial o compilar desde fuente con Go 1.26+. Configurar obligatoriamente SPARROW_ENCRYPTION_KEYS y SPARROW_ENCRYPTION_PRIMARY_KEY_ID con claves criptográficamente seguras antes de iniciar. Ejecutar detrás de proxy inverso que maneje TLS, SSO y limitación de tasa para proteger la API y el dashboard embebido.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.