-
Notifications
You must be signed in to change notification settings - Fork 104
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Port analytics API from static #162
Conversation
Include sample init file. Remove jQuery dependency from Tracker
Custom variables and dimensions need to be configured before the initial page view is tracked. Rather than specifying a callback function (which suggests an asynchronous behaviour), remove the pageview tracking and let apps call it when they’re ready. * Update the example to indicate that the pageview is needed
Include details about how to create and use the analytics API * Detail caveats about custom variable and dimension indexes * Include example of when to set custom dimensions in example * Outline when to instantiate the tracker * Detail the public API
}); | ||
|
||
// Set custom dimensions before tracking pageviews | ||
// GOVUK.analytics.setDimension(…) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it worth adding to the comment, the URL to the doc section about using setDimension? Just so they know which params to pass to it.
👍 Really good documentation |
I would remove the Can you add some documentation around the two files which aren't mentioned (print tracking and error reporting) what they do and how they should be used. The formatting of the list in the "Create an analytics tracker" section of the docs is slightly broken. I think you are missing a blank line. |
Agreed the example is duplicated but if you were going to keep one copy wouldn't it be the file, for convenience and clarity of copying it out? The annotations from the readme could move into it as code comments? |
I don't think that the example should live with the code in the |
Yep, agreed it should go under docs. I'd say a separate file is clearer but up to you guys :) |
Keep a canonical example that can be copy and pasted within the analytics documentation. * Include link to docs from within tracker.js * Remove old example-init.js
Updated in bff50a4 to have a single canonical init example within the docs, also linked to from the source file. Also added a brief bit about print and error tracking. |
This is a great pull request, really detailed but easy to read and understand 👍 @jonnywyatt There is a mention of the lack of dependencies in the analytics page of the docs: https://github.com/alphagov/govuk_frontend_toolkit/pull/162/files#diff-a18afd2d1d40d1e6a39ba0d5f8fc18ddR21. |
👍 |
Is this good to merge? |
- Add: Analytics API #162 https://github.com/alphagov/govuk_frontend_toolkit/blob/master/docs/anal ytics.md
* Pick up analytics scripts which have been ported to the toolkit in: alphagov/govuk_frontend_toolkit#162
# 3.3.0 - Add: Analytics - pageview tracking for a print attempt # 3.2.1 - Fix: Analytics - don't run error and print plugins on load # 3.2.0 - Add: Analytics API alphagov/govuk_frontend_toolkit#162 https://github.com/alphagov/govuk_frontend_toolkit/blob/master/docs/anal ytics.md
# 4.10.0 - Allow New Transport font stack to be overridden by apps using `$toolkit-font-stack` and `$toolkit-font-stack-tabular` (PR #230) # 4.9.1 - Fix phase banner alignment (PR #266) # 4.9.0 - Add websafe organisation colours - Split colours into two files with backwards-compatible colours.scss replacement # 4.8.2 - Add GOV.UK lint to lint scss files (PR #260) - Remove reference to old colour palette (PR #256) - Fix link to GOV.UK elements - tabular data # 4.8.1 - Update DEFRA brand colour to new green (PR #249) # 4.8.0 - Pass cohort name to analytics when using multivariate test (PR #251) # 4.7.0 - Add 'mailto' tracking to GOV.UK Analytics (PR #244) # 4.6.1 - Use the Sass variable $light-blue for link active and hover colours (PR #242) # 4.6.0 - Add breadcrumb styles, separator images and documentation (PR #236) - Add fallback image for the back link (PR #235) # 4.5.0 - Find and auto-start JavaScript modules from markup: `data-module="module-name"`(PR #227) # 4.4.0 - Add helpers partial for functions - Add px to em function and documentation # 4.3.0 - Allow javascript error tracking to be filtered to avoid noise from plugins # 4.2.1 - Track download links using events not pageviews # 4.2.0 - Add two analytics plugins for download and external link tracking - Update typography mixins to be mobile first (PR #157) # 4.1.1 - Update Accessible Media Player to remove dependency on $.browser (PR #206) # 4.1.0 - Add support for sending the `page` option to `GOVUK.analytics.trackEvent` (PR #203) # 4.0.1 - Fix: stop multiline text from dropping below phase tag. # 4.0.0 - Remove Google Analytics classic alphagov/govuk_frontend_toolkit#194 - References to google-analytics-classic-tracker.js should be removed - Rename GOVUK.Tracker to GOVUK.Analytics - References to GOVUK.Tracker should be updated # 3.5.1 - Changes Analytics API library to accept one, both or neither of the analytics tracking codes. This means we can start removing classic tracking codes from apps. #3.5.0 - Adds cross domain tracking to Analytics API library: alphagov/govuk_frontend_toolkit#185 - Adds sass variables for discovery and live phases #3.4.2 - Fix: Before this fix, when a user fell into variant 0 of a multivariate test, the data wouldn't be reported to Google correctly because of a broken null check in the code block that opts the user into the Google Content Experiment. # 3.4.1 - Fix: Make the error colour a darker red for greater contrast and to meet WCAG 2.0 AAAA (this was meant to go into 3.3.1 but was lost from history) - Add `$focus-colour` variable (#180) # 3.4.0 - multivariate-test.js: add support for using Google Content Experiments as the reporting backend for multivariate tests # 3.3.1 - Fix: Make the error colour a darker red for greater contrast and to meet WCAG 2.0 AAAA # 3.3.0 - Add: Analytics - pageview tracking for a print attempt # 3.2.1 - Fix: Analytics - don't run error and print plugins on load # 3.2.0 - Add: Analytics API alphagov/govuk_frontend_toolkit#162 https://github.com/alphagov/govuk_frontend_toolkit/blob/master/docs/anal ytics.md # 3.1.0 - Fix: outdent to add right margin rather than only left - Fix: add missing semi-colons in JavaScript files - Fix: use box-sizing mixin in column mixin to support more browsers - Add: ability to specify float direction on column mixin - Add: Sass-lint tests # 3.0.1 - Fix a bug with the npm publishing. npm requires a version change to publish a package. # 3.0.0 - Change publishing method to not use git submodules in govuk_frontend_toolkit_npm. This is a major version bump because it will move the toolkit from `./node_modules/govuk_frontend_toolkit/govuk_frontend_toolkit/` to `./node_modules/govuk_frontend_toolkit/`, which will break relative imports in Sass. - Fix typo in Sass comment
# 4.10.0 - Allow New Transport font stack to be overridden by apps using `$toolkit-font-stack` and `$toolkit-font-stack-tabular` (PR #230) # 4.9.1 - Fix phase banner alignment (PR #266) # 4.9.0 - Add websafe organisation colours - Split colours into two files with backwards-compatible colours.scss replacement # 4.8.2 - Add GOV.UK lint to lint scss files (PR #260) - Remove reference to old colour palette (PR #256) - Fix link to GOV.UK elements - tabular data # 4.8.1 - Update DEFRA brand colour to new green (PR #249) # 4.8.0 - Pass cohort name to analytics when using multivariate test (PR #251) # 4.7.0 - Add 'mailto' tracking to GOV.UK Analytics (PR #244) # 4.6.1 - Use the Sass variable $light-blue for link active and hover colours (PR #242) # 4.6.0 - Add breadcrumb styles, separator images and documentation (PR #236) - Add fallback image for the back link (PR #235) # 4.5.0 - Find and auto-start JavaScript modules from markup: `data-module="module-name"`(PR #227) # 4.4.0 - Add helpers partial for functions - Add px to em function and documentation # 4.3.0 - Allow javascript error tracking to be filtered to avoid noise from plugins # 4.2.1 - Track download links using events not pageviews # 4.2.0 - Add two analytics plugins for download and external link tracking - Update typography mixins to be mobile first (PR #157) # 4.1.1 - Update Accessible Media Player to remove dependency on $.browser (PR #206) # 4.1.0 - Add support for sending the `page` option to `GOVUK.analytics.trackEvent` (PR #203) # 4.0.1 - Fix: stop multiline text from dropping below phase tag. # 4.0.0 - Remove Google Analytics classic alphagov/govuk_frontend_toolkit#194 - References to google-analytics-classic-tracker.js should be removed - Rename GOVUK.Tracker to GOVUK.Analytics - References to GOVUK.Tracker should be updated # 3.5.1 - Changes Analytics API library to accept one, both or neither of the analytics tracking codes. This means we can start removing classic tracking codes from apps. #3.5.0 - Adds cross domain tracking to Analytics API library: alphagov/govuk_frontend_toolkit#185 - Adds sass variables for discovery and live phases #3.4.2 - Fix: Before this fix, when a user fell into variant 0 of a multivariate test, the data wouldn't be reported to Google correctly because of a broken null check in the code block that opts the user into the Google Content Experiment. # 3.4.1 - Fix: Make the error colour a darker red for greater contrast and to meet WCAG 2.0 AAAA (this was meant to go into 3.3.1 but was lost from history) - Add `$focus-colour` variable (#180) # 3.4.0 - multivariate-test.js: add support for using Google Content Experiments as the reporting backend for multivariate tests # 3.3.1 - Fix: Make the error colour a darker red for greater contrast and to meet WCAG 2.0 AAAA # 3.3.0 - Add: Analytics - pageview tracking for a print attempt # 3.2.1 - Fix: Analytics - don't run error and print plugins on load # 3.2.0 - Add: Analytics API alphagov/govuk_frontend_toolkit#162 https://github.com/alphagov/govuk_frontend_toolkit/blob/master/docs/anal ytics.md # 3.1.0 - Fix: outdent to add right margin rather than only left - Fix: add missing semi-colons in JavaScript files - Fix: use box-sizing mixin in column mixin to support more browsers - Add: ability to specify float direction on column mixin - Add: Sass-lint tests # 3.0.1 - Fix a bug with the npm publishing. npm requires a version change to publish a package. # 3.0.0 - Change publishing method to not use git submodules in govuk_frontend_toolkit_npm. This is a major version bump because it will move the toolkit from `./node_modules/govuk_frontend_toolkit/govuk_frontend_toolkit/` to `./node_modules/govuk_frontend_toolkit/`, which will break relative imports in Sass. - Fix typo in Sass comment
# 4.10.0 - Allow New Transport font stack to be overridden by apps using `$toolkit-font-stack` and `$toolkit-font-stack-tabular` (PR #230) # 4.9.1 - Fix phase banner alignment (PR #266) # 4.9.0 - Add websafe organisation colours - Split colours into two files with backwards-compatible colours.scss replacement # 4.8.2 - Add GOV.UK lint to lint scss files (PR #260) - Remove reference to old colour palette (PR #256) - Fix link to GOV.UK elements - tabular data # 4.8.1 - Update DEFRA brand colour to new green (PR #249) # 4.8.0 - Pass cohort name to analytics when using multivariate test (PR #251) # 4.7.0 - Add 'mailto' tracking to GOV.UK Analytics (PR #244) # 4.6.1 - Use the Sass variable $light-blue for link active and hover colours (PR #242) # 4.6.0 - Add breadcrumb styles, separator images and documentation (PR #236) - Add fallback image for the back link (PR #235) # 4.5.0 - Find and auto-start JavaScript modules from markup: `data-module="module-name"`(PR #227) # 4.4.0 - Add helpers partial for functions - Add px to em function and documentation # 4.3.0 - Allow javascript error tracking to be filtered to avoid noise from plugins # 4.2.1 - Track download links using events not pageviews # 4.2.0 - Add two analytics plugins for download and external link tracking - Update typography mixins to be mobile first (PR #157) # 4.1.1 - Update Accessible Media Player to remove dependency on $.browser (PR #206) # 4.1.0 - Add support for sending the `page` option to `GOVUK.analytics.trackEvent` (PR #203) # 4.0.1 - Fix: stop multiline text from dropping below phase tag. # 4.0.0 - Remove Google Analytics classic alphagov/govuk_frontend_toolkit#194 - References to google-analytics-classic-tracker.js should be removed - Rename GOVUK.Tracker to GOVUK.Analytics - References to GOVUK.Tracker should be updated # 3.5.1 - Changes Analytics API library to accept one, both or neither of the analytics tracking codes. This means we can start removing classic tracking codes from apps. #3.5.0 - Adds cross domain tracking to Analytics API library: alphagov/govuk_frontend_toolkit#185 - Adds sass variables for discovery and live phases #3.4.2 - Fix: Before this fix, when a user fell into variant 0 of a multivariate test, the data wouldn't be reported to Google correctly because of a broken null check in the code block that opts the user into the Google Content Experiment. # 3.4.1 - Fix: Make the error colour a darker red for greater contrast and to meet WCAG 2.0 AAAA (this was meant to go into 3.3.1 but was lost from history) - Add `$focus-colour` variable (#180) # 3.4.0 - multivariate-test.js: add support for using Google Content Experiments as the reporting backend for multivariate tests # 3.3.1 - Fix: Make the error colour a darker red for greater contrast and to meet WCAG 2.0 AAAA # 3.3.0 - Add: Analytics - pageview tracking for a print attempt # 3.2.1 - Fix: Analytics - don't run error and print plugins on load # 3.2.0 - Add: Analytics API alphagov/govuk_frontend_toolkit#162 https://github.com/alphagov/govuk_frontend_toolkit/blob/master/docs/anal ytics.md # 3.1.0 - Fix: outdent to add right margin rather than only left - Fix: add missing semi-colons in JavaScript files - Fix: use box-sizing mixin in column mixin to support more browsers - Add: ability to specify float direction on column mixin - Add: Sass-lint tests # 3.0.1 - Fix a bug with the npm publishing. npm requires a version change to publish a package. # 3.0.0 - Change publishing method to not use git submodules in govuk_frontend_toolkit_npm. This is a major version bump because it will move the toolkit from `./node_modules/govuk_frontend_toolkit/govuk_frontend_toolkit/` to `./node_modules/govuk_frontend_toolkit/`, which will break relative imports in Sass. - Fix typo in Sass comment
Moved the new analytics library, javascript error tracking and print intent tracking from static so it can be easily used in non-rails projects.
Original PR for analytics library: alphagov/static#549
Earlier closed PR for context: #160
Changes from the static version:
.bind
polyfill removedinit
so that apps can set custom dimensions beforehandAlso included: