
Research
/Security News
737 Chrome VPN Extensions Linked to Brand Impersonation and Browser Traffic Redirection
The campaign amassed more than 75,000 installs by targeting Russian-speaking users seeking access to blocked services.
@zeroheight/adoption-cli
Advanced tools
CLI for measuring component usage to view in your zeroheight account.
For full walk through on how to use this CLI tool, head over to our help centre article.
npm i @zeroheight/adoption-cli
When running a command, you will be prompted to authenticate. This will save the Client ID and Access Token to your local machine.
Alternatively, you can authenticate by running the following command:
zh-adoption auth
When running a command with the --interactive false flag, you will need to provide the Client ID and Access Token as environment variables.
export ZEROHEIGHT_CLIENT_ID="your-client-id"
export ZEROHEIGHT_ACCESS_TOKEN="your-access-token"
When running a command with the --log-level <level> --log-file ./my-log-file.log flags, diagnostic information will be written to a file. This can help diagnose issues and can be optionally shared with zeroheight directly to help resolve. If you don't specify --log-file, logs will be output to stderr.
There are 4 levels of increasing severity:
infowarnerrorfatalNote: You will see logs for the specified level and those from the higher severity groups. For example, if you you choose --log-level error then the error and fatal level logs will be surfaced.
To help improve the experience this CLI uses Sentry for error tracking. If you don't want to share error data, you can disable it by setting the environment variable ZEROHEIGHT_CLI_DISABLE_TELEMETRY=true
In the repository in which you wish to get usage metrics around how raw color values are being used, run the following command:
zh-adoption analyze --color-usage
In the React repository in which you wish to get usage metrics around how components from your design system packages are being used, run the following command:
zh-adoption analyze --component-usage
-e / --extensions
Provide a glob pattern to search for files with a specific extension.
zh-adoption analyze -e "**/*.{js,jsx,ts,tsx}"
-i / --ignore
Provide a glob pattern to ignore files, directories or file extensions when analyzing.
zh-adoption analyze -i "**/*.{test,spec}.*"
To pass multiple patterns, use the option multiple times e.g.
zh-adoption analyze -i "**/*.{test,spec}.*" -i "**/*.d.ts"
To ignore nothing, even the default patterns (['**/*.{test,spec}.*', '**/*.d.ts']), pass an empty value
zh-adoption analyze -i
-r / --repo-name
Provide a name for the current repository. This must be passed when -in / --interactive is set to false.
zh-adoption analyze -r "My Repo"
-in / --interactive
Pass in false to disable the interactive mode e.g. when running in a CI environment.
zh-adoption analyze --interactive false -r "My Repo"
--log-level
Provide a severity to output diagnostic messages.
zh-adoption analyze --log-level info
Write logs to a file so they can read and/or shared later.
--log-file
zh-adoption analyze --log-file ./dev.log
--dry-run
Run the command in dry run mode, which allows output to be viewed without sending data to zeroheight.
zh-adoption analyze --dry-run
This will analyze your code repository to help you understand what packages are being used and at what version.
In the repository in which you wish to monitor, run the following command:
zh-adoption monitor-repo
-d / --dir
Provide a path to the specific folder to find package.json and lock file. This option can be passed through multiple times. If not included all folders with package.json and lockfile will be uploaded to zeroheight.
zh-adoption monitor-repo -d ./webApp
-p / --package-name
Provide a name for the current package.
zh-adoption monitor-repo -p "My Package"
--log-level
Provide a severity to output diagnostic messages.
zh-adoption monitor-repo --log-level info
Write logs to a file so they can read and/or shared later.
--log-file
zh-adoption monitor-repo --log-file ./dev.log
--dry-run
Run the command in dry run mode, which allows output to be viewed without sending data to zeroheight.
zh-adoption monitor-repo --dry-run
This will give zeroheight the name and current version of your design system package so you can compare it to the version being used by your other code repositories.
In the repository containing your design system package, run the following command:
zh-adoption track-package
-in / --interactive
Pass in false to disable the interactive mode e.g. when running in a CI environment.
zh-adoption track-package --interactive false
-p / --packages
Provide one or multiple package names to match when searching for design system packages. This must be passed when -in / --interactive is set to false.
zh-adoption track-package -in false -p package1 -p package2 -p package3
zh-adoption track-package -in false --packages package1,package2,package3
--log-level
Provide a severity to output diagnostic messages.
zh-adoption track-package --log-level info
Write logs to a file so they can read and/or shared later.
--log-file
zh-adoption track-package --log-file ./dev.log
--dry-run
Run the command in dry run mode, which allows output to be viewed without sending data to zeroheight.
zh-adoption track-package --dry-run
More info on the commands can be seen by running
zh-adoption --help
FAQs
CLI for measuring component usage
We found that @zeroheight/adoption-cli demonstrated a healthy version release cadence and project activity because the last version was released less than 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.

Research
/Security News
The campaign amassed more than 75,000 installs by targeting Russian-speaking users seeking access to blocked services.

Company News
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.