@welytics/rudder-tracker
v1.0.7
Published
Privacy-first analytics tracker - steer your insights with RudderTracker
Maintainers
Readme
Installation
npm install @welytics/rudder-trackerQuick Start
import { RudderTracker } from "@welytics/rudder-tracker";
// Initialize
RudderTracker.init({
endpoint: "https://api.domain.com",
siteId: "your-website-id",
});
// Track custom events
RudderTracker.track("newsletter-signup", {
source: "header-cta",
plan: "premium",
});Configuration Options
RudderTracker.init({
endpoint: "https://api.domain.com", // Required
siteId: "your-website-id", // Required
trackPageViews: true, // Auto track page views
trackOutboundLinks: true, // Track external clicks
trackFileDownloads: true, // Track file downloads
respectDNT: true, // Respect Do Not Track
enableHeartbeat: false, // Send periodic pings
heartbeatInterval: 30000, // Heartbeat frequency (ms)
debug: false, // Enable console logging
});Usage Examples
React/Next.js
// _app.js or layout component
import { RudderTracker } from "@welytics/rudder-tracker";
useEffect(() => {
RudderTracker.init({
endpoint: process.env.NEXT_PUBLIC_ANALYTICS_ENDPOINT,
siteId: process.env.NEXT_PUBLIC_SITE_ID,
});
}, []);Vue.js
// main.js
import { RudderTracker } from "@welytics/rudder-tracker";
app.config.globalProperties.$analytics = RudderTracker;
RudderTracker.init({
endpoint: import.meta.env.VITE_ANALYTICS_ENDPOINT,
siteId: import.meta.env.VITE_SITE_ID,
});CDN Usage
<script src="https://unpkg.com/@welytics/rudder-tracker/dist/rudder.min.js"></script>
<script>
RudderTracker.init({
endpoint: "https://api.domain.com",
siteId: "your-website-id",
});
</script>API Reference
RudderTracker.init(config)
Initialize the tracker with your configuration.
RudderTracker.track(eventName, properties?)
Track a custom event with optional properties.
RudderTracker.track("button-click", {
buttonId: "cta-main",
page: "/pricing",
authenticated: true,
});RudderTracker.trackPageView(url?, referrer?)
Manually track a page view (usually auto-tracked).
Privacy Features
- No cookies or localStorage - Uses session-based tracking only
- IP anonymization - Last octet removed server-side
- DNT compliance - Respects browser Do Not Track setting
- Minimal data - Only essential metrics collected
- GDPR friendly - No personal data stored
Browser Support
- Chrome/Edge 60+
- Firefox 55+
- Safari 12+
- IE 11+ (with polyfills)
License
MIT © Welytics
