À propos du projet
Le package @vskstudio/takt-solid est une couche fine et compatible avec le rendu côté serveur qui intègre le noyau Takt d'analytics respectueux de la vie privée dans les applications SolidJS. Il ne modifie pas le payload ni les garanties de confidentialité du noyau sous-jacent ; il rend simplement l'API intuitive pour Solid.
Composants clés :
- Composant Takt : placé près de la racine de l'application, il initialise l'analytics au montage, envoie une vue de page initiale, suit la navigation SPA et fournit l'instance d'analytics à l'arbre de composants.
- Hook useTakt : résout l'instance d'analytics live au moment de l'appel. Avant le montage du composant Takt, ou lors du rendu serveur, il retourne un objet no‑op qui ne génère jamais d'erreur, permettant d'utiliser les appels d'événements en toute sécurité dans les gestionnaires.
- Fonction createTaktEvent et composant TaktEvent : façons déclaratives de tracker les clics sans écrire de gestionnaires explicites. Les deux résolvent l'instance active au moment du clic.
- Élément personnalisé takt‑analytics : un web component indépendant du framework utilisable sur des pages non‑Solid. L'import de l'entrée side‑effect enregistre l'élément sans charger le runtime Solid.
- Widgets TaktBadge et TaktEmbed : wrappers minces qui affichent une image badge ou un embed iframe avec politiques de sandbox et de referrer sécurisées.
- Fonction createStats : fournit un client typé pour l'API publique Takt, permettant la récupération programmatique de statistiques comme les données résumées.
L'installation nécessite pnpm (ou npm/yarn) ainsi que les dépendances peer solid‑js version 1.8 minimum et @vskstudio/takt-core version 0.8.1 minimum.
La configuration s'effectue via les props du composant Takt ou les attributs de l'élément personnalisé. Les options incluent le domaine, le endpoint, le tracking des liens sortants, le tracking des téléchargements de fichiers, la navigation SPA, le rapport des erreurs 404, le respect du Do Not Track, l'exclusion localhost, le taux d'échantillonnage, la gestion des chaînes de requête, le scrubbing des URLs et un interrupteur maître activé. Les props sont lues une seule fois au montage ; les changements nécessitent un remontage.
La bibliothèque est entièrement compatible SSR : le composant Takt ne s'exécute côté client que dans onMount, et useTakt retourne un no‑op sécurisé pendant le rendu serveur. L'import de l'élément personnalisé côté serveur est un no‑op protégé par une vérification customElements.
Tous les comportements liés à la confidentialité — support du DNT, exclusion localhost, gestion du consentement et gel du payload — sont implémentés dans le noyau et ne sont pas modifiés par ce wrapper.
Licence : MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.