
Security Fundamentals
Turtles, Clams, and Cyber Threat Actors: Shell Usage
The Socket Threat Research Team uncovers how threat actors weaponize shell techniques across npm, PyPI, and Go ecosystems to maintain persistence and exfiltrate data.
gtagmanager
Advanced tools
Google Tag Manager the easy way
Use TypeScript for best in class instellisense.
Once imported, this package will add a dataLayer to the window object. A dataLayer is a simple array. You can push data to this array using the array prototype method .push():
import * as gtm from 'gtagmanager'
gtm.standardDataLayerInit() // will add a standard dataLayer to the window object
window.dataLayer.push({
"someKey": "someValue",
"anotherKey": "anotherValue"
})
// continues in next code block
Now that you have a dataLayer it is time to set up the Google Tag Manager
// continued from last codeblock
let myGTM = new gtm.GTagManager('someGTMid')
// Note:
// constructor accepts an optional dataLayer array as second parameter
// will use window.dataLayer by default as dataLayer
myGTM.start() // starts the GTM instance
myGTM.pushToDataLayer({ "myKey": "myValue" }) // allows pushing to the GTM instance's dataLayer in case it defers from window.dataLayer
In some setups it may be desireable to build the dataLayer in the frontend when components are loaded together that didn't exist together before in the serving stack chain.
You can do so from any part of the website by referring to window.dataLayer.push({ /* your key:value things here */ })
Google Tag Manager is basically a Java Script Injection engine, that runs async. So there is always a risk of a user navigating away before GTM finishes execution The only more or less stable way to avoid most scenarios is to use something more persistent like Service Worker for gathering data and caching important scripts at the user's location
By default gtagmanager compiles TypeScript to ES6 as most modern browsers support it by now. In order to maximise browser compatibility there is a ES5 transpiled version available:
var gtm = require('gtagmanager/es5/index')
We recommend bundling this module for production using browserify, jspm.io or webpack
FAQs
Google Tag Manager the easy way
The npm package gtagmanager receives a total of 0 weekly downloads. As such, gtagmanager popularity was classified as not popular.
We found that gtagmanager demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security Fundamentals
The Socket Threat Research Team uncovers how threat actors weaponize shell techniques across npm, PyPI, and Go ecosystems to maintain persistence and exfiltrate data.
Security News
At VulnCon 2025, NIST scrapped its NVD consortium plans, admitted it can't keep up with CVEs, and outlined automation efforts amid a mounting backlog.
Product
We redesigned our GitHub PR comments to deliver clear, actionable security insights without adding noise to your workflow.