import { createSignal } from '@signal-js/browser';
const signal = createSignal({
apiKey: 'your-api-key',
projectId: 'your-project-id',
// Enable automatic page tracking
capturePageview: true,
capturePageleave: true,
});
await signal.start();
// Register super properties
signal.register({
appVersion: '2.1.0',
environment: 'production',
});
// Track custom events
function handleButtonClick(buttonId) {
signal.capture('button_clicked', {
buttonId,
page: window.location.pathname,
});
}
function handlePurchase(amount, productId) {
signal.capture('purchase_completed', {
amount,
productId,
currency: 'USD',
});
}
// Track page views manually (for SPAs)
function trackPageView(path, title) {
signal.capturePageview({
path,
title,
});
}