What problem does it solve? Scattered, stringly-typed analytics calls and fragile third-party provider scripts make frontend telemetry unreliable and risky: a failing vendor script can crash the app, event names drift across the codebase, and telemetry may fire before user consent. This Skill establishes a single typed event taxonomy and a best-effort, non-blocking fan-out so analytics never breaks the app. ## Core Features & Use Cases - Typed Event Taxonomy: Canonical event-name constants with a union type, so typos become compile errors and the catalog is reviewable in one file. - Best-Effort Provider Fan-Out: A single track() entry point dispatches to window-guarded adapters (GA4, Clarity, Firebase web and React Native, PostHog, Sentry), each individually try/caught so one failing provider never affects the app or other providers. - Field Web Vitals & Consent Gating: Real-user LCP/INP/CLS reported through the same fan-out, with consent checked once at the boundary so nothing fires before opt-in. - Use Case: Add analytics to a Next.js or Expo app by creating constants/analytics.ts, a services/analytics module, and an AnalyticsProvider, then track typed events from client components with SSR-safe no-op behavior outside the provider. ## Quick Start Ask the AI to set up typed analytics tracking with a consent-gated provider fan-out in your React app following the frontend-observability skill.