Sobre el proyecto

react-fathom es un wrapper de analytics priorizando la privacidad sobre Fathom Analytics, diseñado para aplicaciones basadas en React incluyendo plataformas web y móviles. Soporta seguimiento automático de vistas de página ante cambios de ruta, seguimiento de eventos personalizados, seguimiento de conversión de objetivos con valores monetarios, y ofrece tanto hooks programáticos como componentes declarativos para una integración flexible. Características principales: - Configuración cero-configuración: envuelve tu app con FathomProvider y proporciona un siteId - Seguimiento automático de vistas para Next.js App Router y Pages Router mediante NextFathomProviderApp, NextFathomTrackViewApp y NextFathomTrackViewPages - Soporte para React Native a través de una exportación dedicada /native que utiliza un WebView oculto para cargar el script de tracking de Fathom, con cola offline e integración con React Navigation - Soporte TypeScript completo con definiciones de tipos completas - Tree-shakeable: solo empaqueta lo que usas - Fusión de opciones predeterminadas: establece valores predeterminados a nivel de app en FathomProvider que se fusionan automáticamente en todas las llamadas de tracking - Soporte para providers anidados: los providers hijos pueden sobrescribir los valores predeterminados del padre - Implementación de cliente personalizado: proporciona una interfaz FathomClient para React Native, mocks de prueba o escenarios de renderizado del lado del servidor - Hooks de conveniencia: useTrackOnMount, useTrackOnClick y useTrackOnVisible para patrones de tracking comunes - Componentes declarativos: TrackPageview, TrackClick y TrackVisible para tracking basado en JSX - Soporte para dominios personalizados de Fathom - Tracking del estado de la app en React Native (eventos foreground/background) El paquete requiere fathom-client como peer dependency y funciona con React >= 16.8, Next.js >= 10.0.0 y React Native >= 0.60.0. No se requieren cookies por parte de Fathom, lo que lo hace compatible con GDPR, CCPA y PECR desde el primer momento sin necesidad de banners de consentimiento.