konifer
Konifer es un servicio backend en Kotlin para gestionar el ciclo de vida de imágenes: ingestión, almacenamiento, transformación y validación. Se integra con S3/MinIO y PostgreSQL, ofreciendo procesamiento eficiente vía libvips y clasificación de contenido mediante SigLIP2.
Ficha actualizada 23 sept 2026, 23:49 · upstream 23 sept 2026, 23:25 · release v0.13.0
Qué es konifer
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Konifer es una solución backend diseñada para gestionar activos multimedia en aplicaciones, centralizando la ingesta, almacenamiento y transformación de imágenes sin depender de plataformas SaaS. Utiliza Kotlin con Ktor como framework web, lo que permite un rendimiento no bloqueante y una integración sencilla con arquitecturas existentes.
El servicio soporta múltiples formatos de imagen (JPEG, PNG, WebP, HEIC, AVIF, GIF) y realiza transformaciones eficientes gracias a libvips. Incluye capacidades avanzadas de validación mediante reglas de contenido impulsadas por modelos de visión artificial (SigLIP2), permitiendo detectar imágenes inapropiadas o fuera de especificaciones antes de su almacenamiento.
La arquitectura se basa en una gestión jerárquica de rutas para organizar activos, con soporte para subidas multipartitas, URLs firmadas y redirecciones seguras. Ofiere APIs para evaluación de reglas de contenido y gestión atómica de recursos, facilitando la limpieza de datos cuando un usuario cierra su cuenta.
- Centralizar la gestión de imágenes en aplicaciones que actualmente usan múltiples servicios o buckets S3 dispersos
- Transformar imágenes al vuelo con formatos optimizados (WebP, AVIF) y variantes predefinidas para CDN
- Validar contenido mediante reglas ML (SigLIP2) para bloquear imágenes inapropiadas o fuera de política
- Gestionar activos por rutas jerárquicas (ej. /users/{id}/profile-picture) sin depender de IDs globales
- Procesamiento de imágenes de alto rendimiento mediante libvips y bindings Java FFM
- Validación de contenido con modelos SigLIP2 ejecutados in-proceso (sin salir del servidor)
- Gestión atómica de rutas jerárquicas para eliminación segura de activos asociados a usuarios
- Soporte nativo para formatos modernos como AVIF, JPEG XL y WebP animado
- Requiere instalación manual de libvips en entornos locales o contenedores personalizados
- El modelo SigLIP2 debe descargarse explícitamente antes de usar reglas de clasificación de contenido
- No es un CDN; la entrega final de imágenes debe gestionarse externamente
- La configuración avanzada requiere archivos HOCON y comprensión del modelo de datos
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.
Desplegar con Docker Compose o construir imagen localmente. Asegurar que PostgreSQL esté disponible y configurar bucket S3/MinIO en konifer.conf. Para uso con reglas ML, ejecutar ./scripts/download-siglip2-models.sh antes de iniciar. En macOS, instalar Xcode Command Line Tools si falla libvips. Usar JAVA_HOME apuntando a Temurin 25.
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.