snar
snar es una herramienta auto-alojada para acortar URLs y generar códigos QR dinámicos con gestión de equipos. Utiliza Node.js y SQLite, sin cookies ni almacenamiento de IPs, priorizando la privacidad y seguridad.
Ficha actualizada 22 sept 2026, 14:48 · upstream 22 sept 2026, 14:06 · release v2.0.0
Qué es snar
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
snar es un gestor de enlaces cortos diseñado para ser auto-alojado, que combina generación dinámica de códigos QR con una galería compartida para equipos organizacionales. Cada enlace corto puede redirigir a diferentes destinos sin necesidad de reimprimir el código QR, lo que facilita la gestión de recursos físicos como carteles o tarjetas de visita.
La arquitectura se basa en Node.js y utiliza SQLite como base de datos persistente, operando en modo WAL para garantizar integridad durante las escrituras. El sistema incluye autenticación mediante sesiones firmadas HttpOnly, con soporte opcional para SSO vía OIDC (por ejemplo, con Authentik). La aplicación no almacena direcciones IP ni realiza fingerprinting, cumpliendo con principios de privacidad estrictos.
Para el despliegue, se recomienda Docker con una configuración hardening en compose.yaml, aunque también es posible ejecutarlo nativamente con Node.js. El sistema requiere un reverse proxy con HTTPS obligatorio para garantizar la seguridad de las sesiones y evitar fugas de información en logs.
- Gestión de enlaces cortos para campañas de marketing o redes sociales con redirección dinámica.
- Generación de códigos QR estáticos para WiFi, SEPA o texto sin persistir datos sensibles.
- Creación de una galería compartida de enlaces organizacionales accesible por todo el equipo.
- Monitoreo de clics y estadísticas de tráfico con diagramas temporales y análisis de dispositivos.
- Implementación de autenticación centralizada mediante SSO OIDC para entornos corporativos.
- Códigos QR dinámicos que permiten cambiar el destino sin reimprimir, ahorrando costes en material impreso.
- Base de datos SQLite en modo WAL con soporte para migraciones automáticas y backups seguros vía API.
- Privacidad garantizada: no se almacenan IPs ni se realiza fingerprinting de usuarios.
- Soporte nativo para SSO OIDC (ej. Authentik) y gestión de sesiones HttpOnly firmadas.
- Galería compartida de enlaces con roles Admin/Miembro y control granular de visibilidad.
- Generador estático de QR para WiFi, SEPA y texto sin persistir datos en la base de datos.
- HTTPS es obligatorio; el servicio no incluye TLS propio y requiere un reverse proxy externo.
- No se permite downgrade de versión; las actualizaciones requieren backup previo de la base de datos.
- Los backups de SQLite en modo WAL deben realizarse con precaución para evitar inconsistencias momentáneas.
- La gestión de dominios cortos se realiza dentro de la aplicación, no mediante configuración externa fija.
- Las estadísticas de clics pueden ser limitadas si se activa la retención temporal de datos (CLICK_RETENTION_DAYS).
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 y compose.yaml. Configurar reverse proxy con HTTPS antes del servicio. Variables clave: ADMIN_PASSWORD, BASE_URL, DOMAINs. Backup diario de /data/snar.db usando mejor-sqlite3 API. No usar 0.0.0.0 sin proxy. Verificar TRUSTED_PROXIES si el tráfico entra por IP pública.
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.