Add Pug to your stack
Pug ships three SDKs: Web, Node, and Flutter. The browser frameworks all use the same framework-agnostic Web SDK. Pick yours for the exact setup.
Pug for Next.js
Add product analytics to a Next.js app with the framework-agnostic Web SDK, autocapture in one client component.
Set it up Web SDKPug for React
Drop the Web SDK into any React app, call init() once at startup and autocapture every interaction.
Set it up Web SDKPug for Vue
Initialise the Web SDK in main.ts and get autocapture across your Vue app, no plugin required.
Set it up Node SDKPug for Node.js
Send authoritative server-side events from your backend with the Node SDK, and read profiles back.
Set it up Flutter SDKPug for Flutter
Ship product analytics in your Flutter app with the Dart SDK, auto-tracking and typed events.
Set it upThree SDKs cover every surface
A framework page tells you where to put the call. This tells you which SDK is making it: most products end up with two, a browser one and a server one, writing to the same profiles.
-
Web SDK
@pug-sh/browserAnything that runs in a browser: Next.js, React, Vue, Svelte, or plain JavaScript. One init() call turns on six autocapture trackers, and a public key is safe to ship in client code.
-
Node SDK
@pug-sh/nodeEvents that must be true regardless of the browser, payments, webhooks, background jobs. Names the user explicitly, and the same private key reads profiles and insights back.
-
Flutter SDK
pug_flutterCross-platform apps on iOS, Android, web, and desktop. Lifecycle tracking starts at init(); a route observer adds screen views, and typed methods cover the well-known events.
Integrate in minutes
One init() call and autocapture starts. Self-host the whole stack under AGPL-3.0, or use the free cloud during open beta.
Questions? Email hello@pug.sh