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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@omniboard/analyzer

v3.6.1

Published

<img src="https://app.omniboard.dev/assets/logo_email.png" height="50">

Downloads

10,386

Readme

@omniboard/analyzer

Getting started with Omniboard in less than 5 minutes (video)

Create account, get API key and define checks

  1. Create free account for Omniboard.dev
  2. Generate API key in the Omniboard.dev (docs)
  3. Set API key as an OMNIBOARD_API_KEY environment variable (or pass it in using --api-key flag when running omniboard command, never commit your API key to the version control system)
  4. (optional) test your API key using npx omniboard test-connection --api-key <your-api-key> (same as omniboard tc --ak <your-api-key>)
  5. Define checks in the Omniboard.dev app

Run in projects

Make sure you have already set OMNIBOARD_API_KEY environment variable in the given environment (CI) or pass it in using --api-key flag when running omniboard command locally

  1. install it using npm i -D @omniboard/analyzer in the project we want to analyze (dev dependency)
  2. run it using npx omniboard (or run omniboard as a npm script, eg "postbuild": "omniboard"")

or

  • npx @omniboard/analyzer (in case it was not pre-installed)

or

  • npm i -g @omniboard/analyzer - install it globally to be able to run omniboard in any path without waiting for npx install

Commands

  • omniboard analyze - (same as omniboard) analyze project and upload results to Omniboard.dev, or store results locally with --json
  • omniboard batch - Clone (or update) and analyze multiple project repositories and upload results to Omniboard.dev, or store results locally with --json
  • omniboard test-connection - test connection to the Omniboard.dev app
  • omniboard test-check - test check definition provided as a CLI argument (can be copied from the Omniboard.dev app)

How it works - analyze

  1. retrieve current checks defined in the Omniboard.dev app
  2. run retrieved checks for the current project (skip checks that are disabled or if project name does not match provided pattern)
  3. store check results locally when --json flag was present
  4. upload checks results to the Omniboard.dev app when --json is not present and OMNIBOARD_API_KEY env variable or --api-key flag is present
  5. Explore results in the Omniboard.dev app using projects, results or dashboards overview

How it works - batch

Setup

  1. on the first run, create empty workspace and job file (if not present)
  2. (manual step) add repository urls to the job file (in queue array)

Execution

  1. batch asks the Analyzer planning API whether each repository should be analyzed or skipped as unchanged

  2. batch clones (or updates) repositories whose decision is analyze

  3. batch runs omniboard analyze, uploads the project, and records the successful analysis for future planning

  4. batch moves each repository from queue into exactly one outcome collection: analyzed, skipped, or failed; use --preserve-queue to retain queue entries for repeated runs

  5. skipped entries include one reason: unchanged, excluded, or unresolved

  6. batch repeats these steps until every queued repository is processed

  7. batch prints the final outcome counts and non-zero skip-reason counts, for example:

    Batch results, queue: 0, analyzed: 45, skipped: 5 (unchanged: 4, excluded: 1), failed: 0

The batch job file uses this shape:

{
  "queue": [],
  "analyzed": ["https://example.com/analyzed.git"],
  "skipped": [
    {
      "source": "https://example.com/skipped.git",
      "reason": "unchanged"
    }
  ],
  "failed": []
}

This is a breaking format. Recreate older job files that contain done or completed.

Options

Run omniboard --help or omniboard <command> --help for the complete yargs-generated help.

For boolean options, passing the flag means true (for example, --telemetry). Pass false explicitly to disable it (for example, --telemetry false). Negated forms such as --no-telemetry are not supported.

Global

--verbose                    Display debug level logs                       [boolean] [default: false]
--silent                     Silence renderer output                        [boolean] [default: false]
--show-check-results         Show individual check results in log output    [boolean] [default: false]
--api-key, --ak              API key generated in Omniboard.dev             [string]
--api-url, --api             URL of an on-prem Omniboard instance           [string]
--expected-group             Fail if the API key targets another group      [string]
--errors-as-warnings         Exit successfully when analysis errors occur   [boolean] [default: false]
--help, -h                   Show help                                      [boolean]
--version, -v                Show version number                            [boolean]

In CI, pass --expected-group <group> to analyze, batch, or test-connection. The Analyzer then verifies the API key destination and stops before analysis or upload when the authenticated group does not match. Without this flag, analyze and batch do not make the additional connection check.

analyze

--json                       Store results locally and skip upload          [boolean] [default: false]
--json-path                  Local results path                 [string] [default: "./dist/omniboard.json"]
--check-pattern, --cp        Run only checks matching the pattern           [string]
--telemetry                  Report analyzer performance telemetry          [boolean] [default: false]
--sanitize-repo-url, --sru   Sanitize authentication tokens in repository URLs
                                                                            [boolean] [default: true]

batch

--skip-unchanged             Skip repositories with matching successful analysis state
                                                                            [boolean] [default: true]
--job-path                   Batch job file                     [string] [default: "./omniboard-job.json"]
--preserve-queue             Preserve the queue for repeated runs           [boolean] [default: false]
--workspace-path             Batch workspace                    [string] [default: "./omniboard-workspace"]
--json                       Store results locally and skip upload          [boolean] [default: false]
--check-pattern, --cp        Run only checks matching the pattern           [string]
--sanitize-repo-url, --sru   Sanitize authentication tokens in repository URLs
                                                                            [boolean] [default: true]
--telemetry                  Report analyzer performance telemetry          [boolean] [default: true]

test-check

--check-definition, --cd     Check definition as JSON                       [string]
--json                       Store results locally                          [boolean] [default: false]
--json-path                  Local results path                 [string] [default: "./dist/omniboard.json"]

FAQ

Is it possible to run @omniboard/analyzer behind organization proxy?

Yes

The @omniboard/analyzer uses global-agent library which will uses HTTP_PROXY, HTTPS_PROXY and NO_PROXY environment variables and use them to make requests to https://api.omniboard.dev

Is this uploading my source code to the cloud?

No

The @omniboard/analyzer runs checks against your source code (or even generated artifacts) and uploads results of these checks to the cloud service for further processing. The uploaded content is then just metadata describing the projects and results but NOT the projects themselves.

In theory, a check which matches everything could be constructed but such result will be rejected as the payload would be too large. The limits of how much data can be stored per check and per all checks for a project can be customized in organization settings in the Omniboard.dev app.