npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

reveal-ga

v0.2.0

Published

Add Google Universal Analytics tracking to your reveal.js presentation

Downloads

13

Readme

reveal-ga

A plugin for Reveal.js to add Google Universal Analytics tracking to your presentations.

Reveal.js provides a number of events that we can listen for, and this package will send those events to Google Analytics for tracking.

Installation

  1. Install the plugin via npm:

     $ npm install --save reveal-ga
  2. Obtain a Profile ID from Google Analytics; this should look something like UA-XXXXXXXX-X.

  3. Define a gaPropertyID variable in your presentation file before Reveal.initialize():

     <script>
     	var gaPropertyID = 'UA-XXXXXXXX-X';
     	Reveal.initialize({
     		// ...
     	});
     </script>
  4. Add the following inside Reveal.initialize's dependencies array to load the plugin:

     dependencies: [
     	// other dependencies/plugins
     	{ src: 'node_modules/reveal-ga/dist/reveal-ga.min.js' }
     ]

Reveal.js events that can be tracked

After setting up the package according to the instructions above, Google Analytics should pick up on the following actions:

  • Any time the active slide is changed
  • Slide overview (triggered by the ESC key) shown or hidden

Debugging events

If you want to see what information is being sent, drop the following somewhere in your presentation to get debug statements output to the console:

window.addEventListener('reveal-ga', function (ev) {
  console.log('New Reveal GA event:', ev.detail);
});

Every time a new event is sent to Google Analytics a corresponding custom reveal-ga event is also sent to the window object.

Troubleshooting

Here are common errors found with reveal-ga and potential solutions:

Received an "Unable to register custom Google Analytics events" warning in the console.

This warning occurs when either the Reveal object or the gaPropertyID variable is undefined. Please be sure that reveal-ga is being loaded via Reveal.js' dependencies property as described in the instructions above, and that gaPropertyID is declared before calling Reveal.initialize().