1.0.0 • Published 12 months ago

wideangle-vuejs v1.0.0

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
12 months ago

full_logo_color_light_transparent

Wide Angle Analytics for Vue.js

Enable privacy-friendly web analytics in your Vue.js 3.x application with our official plugin.

Wide Angle Analytics is powerful, strictly-GDPR compliant Google Analytics alternative.

How to get started

You can enable Wide Angle Analytics in your Vue.js projects in just few steps. No complex configuration needed as our sane defaults give you reliable and privacy centric deployment out of the box.

  1. Go to Wide Angle website, create an account. You can create free 14-day trail. No Credit Card is required. Learn more.
  2. Create new Site and activate it.
  3. Install wideangle-vuejs plugin in your Vue application.

npm install wideangle-vuejs

  1. Enable and configure plugin.
import WideAnglePlugin from 'wideangle-vuejs'

app.use(WideAnglePlugin)

Configuring Wide Angle Analytics plugin

The Wide Angle Analytics plugin must be initialized with configuration object as there are required settings without defaults.

optiondescriptionrequireddefaultexample
siteIdThe Site ID from Wide Angle Site settings:white_check_mark:none8D27G3B9ACA01F4241
domainDomain hosting the script, can be found in Wide Angle Analytics Site settings:white_check_mark:nonestats.wideangle.co
fingerprintShould script use browser fingerprinting; this might require collecting consent depeing on the applicable laws:x:falsetrue
supressDntShould script ingore Do Not Track browser setting. If not enabled, not events will be sent if user's browser has DNT enabled:x:falsetrue
includeParamsAn array of query parameters that can be passed as part of tracking event. By default only utm_* and ref parameters are passed in the event:x:[]['sessionId', 'offset']
excludePathsAn array of URL paths that should not trigger default events such as page view, page leave:x:[]['^/wp-admin/.*', ]
ignoreHashIf enabled, change in the URL fragment will not trigger page view event:x:falsetrue

You will find more details about these settings in Wide Angle Analytics documentation.

Example:

import WideAngle from 'wideangle-vue'

const app = createApp(App);

app.use(WideAngle, {
  siteId: "8D27G3B9ACA01F4241",
  domain: "stats.example.com",
  fingerprint: true,
  supressDnt: true
});

Usage

The Wide Angle Analytics provides an instance of waa which can be then injected to your component.

import { inject } from 'vue'
const waa = inject('waa');

You will find a fully functional example in this repository.

Tracking Pageviews

No action necessary. The tracker script automatically issues Page View and Page Leave events.

Tracking Events

Wide Angle supports three specialized events:

  • clicks
  • downloads
  • custom actions

Site has to have these event enable in Wide Angle Analytics configuration prior to usage. Otherwise the tracker script will not sent these events. Consult official documentation regarding how to enable event handling.

Tracking Clicks

Currently Click Events are emitted automatically based on element data attributes.

Tracking Downloads

Depending on the configured mode, the Download Event will fire automatically when either:

  • a file with recognized extension is being downloaded, or
  • when a link is marked with data-waa-name attribute.

Tracking Custom Actions

Custom action are the most flexible and can be triggered directly from Vue components. As such their usage is not limitted due to Shadow DOM.

Example:

<template>
  <button @click="sendEvent()">Send Event</button>    
</template>

<script setup>
import { inject } from 'vue'
const waa = inject('waa');
const sendEvent = async () => {
  const params = {
    session: 'cjhw92nf9aq',
    cohort: 'c1233'
  }  
  waa.value.dispatchEvent('interest', params);  
}
</script>