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

@nijam/vitest-reporter

v0.1.0-alpha.2

Published

Vitest reporter for Nijam — captures test runs and ships them to the Nijam API.

Readme

@nijam/vitest-reporter

Vitest reporter for Nijam — captures your test runs and ships them to the Nijam dashboard so you can track what failed, why, and where (error log + failing line), across CI runs and over time.

Vitest has no Playwright-style traces, so runs won't include a trace viewer. Everything else (failures, error output, the failing line, durations, retries, and your test source) is captured.

Install

npm install -D @nijam/vitest-reporter

Configure

Add the reporter to your vitest.config.ts. Pass the API key via an environment variable (it's a secret — keep it out of source control):

import { defineConfig } from 'vitest/config';
import NijamReporter from '@nijam/vitest-reporter';

export default defineConfig({
  test: {
    // Keep 'default' so you still get Vitest's console output.
    reporters: [
      'default',
      new NijamReporter({
        apiKey: process.env.NIJAM_API_KEY, // required
        projectId: '<project-uuid>', // required — from the dashboard
      }),
    ],
    // Capture the failing line for each test (off by default in Vitest).
    includeTaskLocation: true,
  },
});
export NIJAM_API_KEY="nij_sk_…"   # from the Nijam dashboard → Secret keys
npx vitest run

Options

| option | type | default | what it does | | -------------- | ------- | ----------------------- | ------------------------------------------------------------- | | apiKey | string | — | Ingest API key (required). | | projectId | string | — | Project UUID (required). | | apiUrl | string | https://api.nijam.dev | API base URL. | | environment | string | — | Free-form environment tag (e.g. staging). | | uploadSource | boolean | true | Upload each test file's source so the dashboard can show it. | | autoComplete | boolean | true | Finalize the run when the process ends. false for fan-out. | | silent | boolean | false | Suppress [nijam] log lines. |

apiKey and apiUrl also read from NIJAM_API_KEY / NIJAM_API_URL; autoComplete is forced off by NIJAM_AUTO_COMPLETE=false.

If apiKey or projectId is missing, the reporter disables itself with one warning — your tests run exactly as before.

Failing line: Vitest only records each test's source location when test.includeTaskLocation is true. Enable it (as above) so the dashboard can show and link the failing line.

CI metadata

Run context (commit, branch, PR number, CI provider/run URL, commit author) is detected automatically from GitHub Actions, GitLab CI, CircleCI, Bitbucket Pipelines, or generic GIT_* env vars, falling back to git. No configuration needed.

Guarantees

This reporter never breaks your test run. Every hook is fail-soft: a network error, a bad key, or an unreachable API produces a [nijam] warning and nothing more.

License

MIT