À propos du projet

Insight est un tableau de bord d'analyse web que vous exécutez sur votre propre serveur. Il s'installe une seule fois avec Docker, puis une simple balise script est collée dans l'en-tête d'un site ; le tableau de bord affiche alors, en temps réel, qui visite, d'où, ce qu'ils lisent, ce qu'ils achètent et quels bots IA explorent les pages. Il n'y a pas de compte SaaS ni de tiers — chaque octet reste dans une base de données sur la machine que vous avez choisie. Mesures d'audience et de contenu - Visiteurs, pages vues, taux de rebond, temps d'engagement, nouveaux visiteurs par rapport aux visiteurs récurrents - Flux en direct et carte du monde 3D avec détails par visiteur - Pages les plus consultées, pages d'atterrissage, pages de sortie et clics sortants - Pays, régions, villes et langues Acquisition - Classification des canaux (recherche, social, IA, référencement, direct), référents, campagnes et analyse complète des UTM - Mots-clés Search Console via une connexion optionnelle Revenus - Une connexion Stripe utilisant une clé en lecture seule affiche les revenus nets des remboursements, le taux de conversion, le revenu par visiteur, ainsi que l'attribution de la source et de la campagne dérivée de vos propres événements d'achat Comportement et bots - Entonnoirs de deux à quatre étapes, cohortes de rétention hebdomadaires et carte thermique des heures de pointe - Journalisation des crawlers IA et d'indexation par page, répartis en groupes de réponses IA, d'indexation et d'entraînement ; les crawlers qui n'exécutent jamais JavaScript sont tout de même enregistrés côté serveur Fonctionnalités de confort - Plages de dates : aujourd'hui, 7j, 30j, 90j ou personnalisé, plus des notes sur les graphiques - Thèmes clair et sombre et personnalisation du tableau de bord par glisser-déposer - Importation GA4 optionnelle pour les chiffres historiques et Mapbox pour le globe Modèle de confidentialité - Par défaut, le tracker n'écrit rien sur l'appareil du visiteur : pas de cookies ni de localStorage - Les visiteurs sont comptabilisés avec un hachage SHA-256 salé qui change quotidiennement ; les adresses IP brutes ne sont jamais écrites dans la base de données et ne peuvent être récupérées à partir du hachage - Un mode précis optionnel via data-persist="true" stocke un identifiant tiers aléatoire dans le localStorage pour un suivi exact des visiteurs récurrents et de la rétention ; le README précise que cela doit être traité comme un cookie dans les politiques de confidentialité et, pour les audiences européennes, dans les flux de consentement - Le projet stipule clairement qu'aucun outil d'analyse ne rend un site conforme au RGPD à lui seul, car la conformité concerne tout ce qui est fait avec les données personnelles Installation et opérations - Un script de provisionnement pour un serveur Ubuntu neuf installe Docker, les règles de pare-feu et les mises à jour de sécurité automatiques - La configuration se trouve dans un fichier .env : e-mail et mot de passe de l'administrateur, secret d'authentification et mot de passe ClickHouse - Deux conteneurs démarrés avec Docker Compose ; un petit serveur 1 vCPU / 2 Go de RAM est décrit comme suffisant - Un workflow GitHub Actions optionnel construit l'image et la déploie sur votre serveur via SSH à chaque push Sécurité - Pas d'inscription publique ni de point de terminaison d'enregistrement ; le seul administrateur est l'e-mail et le mot de passe définis dans l'environnement du serveur, comparés en temps constant - Authentification à deux facteurs obligatoire : un code QR est affiché lors de la première connexion et un code à 6 chiffres est requis par la suite - Les sessions sont signées HMAC avec le secret d'authentification et expirent après 30 jours - Le tableau de bord est marqué noindex et interdit dans le fichier robots.txt - Les secrets résident uniquement dans le .env du serveur ; le dépôt n'en contient aucun CLI - Une interface en ligne de commande (CLI) en lecture seule avec un jeton distinct expose des chiffres tels que "insight stats 30d", "insight stats today --site myshop.com" et "insight sites", et peut être reliée à un assistant IA pour des questions en langage naturel ; le jeton ne peut pas déverrouiller le tableau de bord Stack et licence - Next.js 16 App Router (standalone), React 19, TypeScript et Tailwind CSS v4 - ClickHouse stocke les événements, SQLite stocke la configuration ; Mapbox GL rend le globe et Recharts dessine les graphiques - Sous licence MIT, créé par Nicolas Lecocq