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

teambition-gta

v2.0.0-alpha.16

Published

A teambition analysis toolkit

Downloads

10

Readme

Analysis Tool for Teambition

Usage

First, use Bower to install GTA:

bower install gta

or with NPM:

npm install --save teambition/gta

Then, include the following script in your HTML and you are ready to go:

<script id="gta-main"
  src="node_modules/gta/lib/index.js"
  data-google="UA-3318xxxx-1"
></script>

Set User ID

gta.setUser(id, user)

Register Property

gta.registerProperty(key, value)
gta.unregisterProperty(key)
gta.registerPersistentProperty(key, value)
gta.unregisterPersistentProperty(key)

All registered properties would be mixed with every events util unregister. General properties last in session level, but persistent property stores in cookie under user's namespace.

Register Provider

gta.registerProvider(ProviderCtor, params)

Params could be omitted when params is provided during the initialize (in options or #gta-main).

Register Plugin

gta.registerPlugin(PluginCtor, params)

A plugin cloudn't be unregistered now, returns plugin instance.

Set Current Page

// Set the current page, default value of the 'page' field while invoking gta.events(gtaOptions)
gta.setCurrentPage('Home Page')

Page View

Call the pageview function to record a new page view:

// Use single object
gta.pageview({
    'page': '/my-overridden-page?id=1',
    'title': 'my overridden page'
})

// Use multiple string
gta.pageview('/api/hello', '?world');

Events

  1. data-gta property in DOM element use similar key-value format ({"key": "value"}) like JSON, and quota could be omitted.
  2. Colon, comma and quota cannot be used in key and value.

You can set current page page, it will be automatically added to the gtaOptions:

// It is usually called when the route change
gta.setCurrentPage('Tasks Page')

You can call the event function to track an event:

gta.event({action: 'add content', page: 'Project Page', type: 'task', control: 'tasks layout', method: 'double-click'})

either add data-gta='event' to a DOM element as:

<button data-gta="{action: 'add content', page: 'Project Page', type: 'task', control: 'tasks layout', method: 'double-click'}">click</button>

To log gta event into console automatically, you can set the 'debug' mode:

gta.debug = true
or
window._gta_debug = true

API Documentations

Change Log

2.0.0

  1. Migrate to typescript
  2. New provider: APlus.js
  3. New local cookie stroage provides persistence preference and userdata storage
  4. Drop support for tbtracking, baidu analytics, customer.io, fullstory, growing.io and sensorsdata
  5. TBPanel has it's lite version
  6. data-random-proportion is not supported anymore
  7. Other data-* properties will passthough to provider directly
  8. API arguments change: setUser, registerProvider and registerPlugin