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

tagmanager-build-tool

v1.2.8

Published

A tool to build tagmanager html, javascript and tpl entities.

Downloads

20

Readme

TBT - Tagmanager build tool

Description

Tagmanager build tool is a unofficial tool which downloads and uploads your Tagmanager tags, variables and templates. This will enable you to work in a code editor of choice and version your code.

Installation

  1. Run npm install -g tagmanager-build-tool

  2. Create a Google Cloud Project and connect enable the Tagmanager API.

  3. After enabling the API create a service account with access to use that API.

  4. Create a new folder where you want to work and optionally run git init.

  5. Download the key as json and save it in the root as gcp-sa-key.json.

  6. Create a .env file. You can find the required id's in your tagmanager url <https://tagmanager.google.com/#/container/accounts/<accountid>/containers/<containerid>/workspaces/<workspaceid>

ACCOUNT_ID=<your account id>
CONTAINER_ID=<your container id>
USER_EMAIL=<service account email address>
USER_NAME='<This name you want to display when you do uploads>'
  1. Run tbt pull to see if everything works.

Options

Run tbt to see help or tbt <command> to see the help for each command.

Usage: index [options] [command]

Tagmanager build tool

Options:
  -V, --version   output the version number
  -h, --help      display help for command

Commands:
  fetch           Fetch changes from Tagmanager without extracting code.
  pull            Pull changes from Tagmanager and extract code.
  build           Build json files so they are ready for upload.
  push [options]  Push changes to tagmanager. Include a comma seperated list of paths to process or omit to process all.
  help [command]  display help for command

Workflow

Fetch

Download all container data in JSON format. This is a direct download and is mostly usefull for obtaining the latest fingerprint.

Pull

Download all container data in JSON format and extract custom code in seperate files. Allowing you to easily modify or version code in your own code editor.

Build

Build requests in json files which can be used for upload. Will contain all of your modified code.

Push

Upload all or specified (by build filename) tags, variables or templates.

:warning: Fingerprinting errors: When running the update function and the fingerprints have changed (e.g. somebody did a change in tagmanager) the upload will fail. Run fetch to get the latest fingerprints. Build to get the new request objects and push to try again.