Sobre el proyecto

Aurora es una aplicación de analítica web de código abierto y autohospedada, diseñada para medir el tráfico de sitios web sin almacenar nada en los dispositivos de los visitantes. No utiliza cookies, ni localStorage, ni fingerprinting, y mantiene los datos de eventos en una base de datos PostgreSQL controlada por el operador. El script de seguimiento del navegador se reporta en 2.4 KB durante la transferencia. Los visitantes se identifican a través de un HMAC rotativo derivado de la dirección IP, el agente de usuario y un salt del lado del servidor. La entrada del hash rota diariamente, por lo que los IDs de los visitantes no pueden vincularse entre días, y nada de lo que sale del navegador está destinado a ser rastreable hasta una persona. Este enfoque se presenta como relevante para el Art. 5(3) de ePrivacy, ya que el almacenamiento de información en equipos terminales, como localStorage, se trata de manera similar a las cookies. El panel de control muestra visitas, visitantes únicos, sesiones, tasa de rebote y duración promedio de la sesión para un rango y zona horaria seleccionados. Incluye una serie temporal de Recharts y desgloses por páginas, referentes, canales de adquisición, países, navegadores, sistemas operativos, dispositivos, idiomas y parámetros UTM. Los eventos personalizados pueden llevar propiedades escalares y valores de ingresos, con monedas ISO-4217. Un sitio puede marcarse como público para exponer un panel de analítica de solo lectura sin necesidad de inicio de sesión. El despliegue está disponible a través de imágenes de Docker publicadas para linux/amd64 y linux/arm64. La configuración requerida incluye DATABASE_URL y SESSION_SECRET, mientras que AURORA_SALT es obligatorio en producción. Se recomienda encarecidamente AURORA_IP_HEADER para que el salto de proxy confiable determine los datos de IP del cliente; si no se establece, la aplicación advierte y recurre a encabezados que los clientes pueden configurar. AURORA_COUNTRY_HEADER es opcional para obtener el código de país desde un edge. Para rastrear un sitio, el panel proporciona una etiqueta de script con el ID del sitio. Las vistas de página y los cambios de ruta del lado del cliente se rastrean automáticamente. Los eventos personalizados llaman a una función global aurora, que pone en cola las llamadas realizadas antes de que el script se cargue. Las propiedades aceptan solo escalares, hasta 24 claves. El desarrollo requiere Node 20+ y pnpm 10. El proyecto es un espacio de trabajo de pnpm con una aplicación web de React Router y un paquete de rastreador empaquetado en el script servido. Utiliza Drizzle en PostgreSQL, Tailwind CSS con shadcn/ui, Recharts, Vitest y oxlint/oxfmt. Los commits siguen Conventional Commits, las versiones se automatizan con release-please y el versionado sigue SemVer. Aurora 4 se describe como una reescritura completa sin ruta de migración desde 1.x o 2.x. El proyecto tiene licencia MIT.