@inquir/inquiranalytics
v0.0.8
Published
The `inquiranalytics` library provides an efficient way to track user interactions and page analytics in web applications. It automatically captures events like mouse movements, clicks, scrolls, and programmatic scrolls and sends relevant data to a specif
Downloads
100
Readme
Inquir Analytics
The inquiranalytics
library provides an efficient way to track user interactions and page analytics in web applications. It automatically captures events like mouse movements, clicks, scrolls, and programmatic scrolls and sends relevant data to a specified analytics API.
Installation
To use the inquiranalytics
library, import it into your project:
<script src="https://cdn.jsdelivr.net/npm/@inquir/[email protected]/dist/index.js"></script>
Usage
The library exports a function inquiranalytics
that initializes event tracking and returns a cleanup function to remove all listeners when no longer needed.
Initialization
const cleanup = inquiranalytics({
token: 'your_auth_token', // Replace with your actual authorization token
indexName: 'your_index_name', // Replace with your analytics index name
});
Parameters
- token:
string
– Required. An authorization token used in theAuthorization
header for API requests. - indexName:
string
– Required. The name of the index where analytics events are recorded.
Returns
- cleanup:
function
– A function that, when called, removes all event listeners attached by the tracker.
Features
Tracked Events
The library tracks and sends data on the following user interactions:
- Mouse Move (
mousemove
): Captures the x and y coordinates of mouse movements. - Scroll (
scroll
): Tracks scroll positions. - Click (
click
): Tracks x and y coordinates of clicks. - Pointer Down (
pointerdown
): Captures details when a pointer event is initiated (e.g., mouse or touch start). - Programmatic Scroll Handling (
message
): Allows scroll tracking within iframes by detecting programmatically initiated scrolls.
Event Data
Each event payload includes:
- eventType: A string identifying the event (e.g.,
"click"
,"scroll"
). - timestamp: Timestamp of the event.
- sessionId: Unique identifier for the user’s session.
- screenWidth and screenHeight: Dimensions of the user’s screen.
- url: URL of the page where the event occurred.
Example Code Snippet
// Initialize the tracker with necessary configuration
const cleanup = analyticsTracker({
token: 'your_auth_token', // Replace with your actual authorization token
indexName: 'your_index_name', // Replace with your index name for analytics events
});
// The tracker will now monitor events such as:
// - Mouse movements
// - Scroll actions
// - Click events
// - Programmatic scroll handling (e.g., iframe scrolling)
// To stop tracking and clean up all event listeners, call the cleanup function:
cleanup();
Cleanup
When you no longer need analytics tracking, call the cleanup function returned by inquiranalytics
to remove all event listeners:
cleanup();