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

@pyratzlabs/gadget

v0.1.1

Published

AI-powered E2E testing CLI tool

Readme

Gadget

AI-powered E2E testing CLI that acts as an agentic beta tester.

Write tests in YAML, run them against any web application with Playwright, and get production readiness assessments powered by Claude.

Quick Start

1. Install

npm i -g @pyratzlabs/gadget
npx playwright install chromium

2. Initialize a project

gadget init

This creates a .gadgetrc.yaml config file and a sample test in tests/example.test.yaml.

3. Run an audit

Set your Anthropic API key, then run the audit command against your app:

export ANTHROPIC_API_KEY="sk-ant-..."
gadget audit tests/ --base-url https://staging.myapp.com

Gadget runs every test flow with screenshots at each step, then sends them to Claude to evaluate the UI from a real user's perspective. You get a verdict (ready, not-ready, or needs-attention), a quality score (0-100), and actionable findings.

Writing Tests

Tests are YAML files with a name, optional config/variables, and a list of steps:

name: Login Flow
config:
  baseUrl: "https://myapp.com"
  timeout: 10000
  screenshot: on-failure

variables:
  username: "testuser"
  password: "secret123"

steps:
  - navigate: "/login"

  - fill:
      label: "Email"
      value: "{{ username }}"

  - fill:
      label: "Password"
      value: "{{ password }}"
      secure: true

  - click: "Sign In"

  - assert:
      url: "/dashboard"

  - assert:
      text: "Welcome back"
      visible: true

Use {{ variableName }} for test variables and {{ env.VAR_NAME }} for environment variables. Mark sensitive fields with secure: true to mask values in logs.

Commands

| Command | Description | |---------|-------------| | gadget run <paths...> | Run E2E tests | | gadget audit <paths...> | Run tests + AI production readiness assessment | | gadget check | Auto-generate and run tests from git diff | | gadget validate <paths...> | Validate test files without running | | gadget init | Scaffold .gadgetrc.yaml and example test | | gadget providers | List available AI providers and their status |

AI Audit & Quality Score

The audit command captures a screenshot after every step and sends them to Claude for review. The AI evaluates layout, readability, visual bugs, broken flows, and UX friction — exactly what a human tester would look at.

Findings are categorized by severity:

| Severity | Impact on score | |----------|----------------| | Critical | -20 | | Warning | -10 | | Nitpick | -3 | | Improvement | -1 |

A score of 80+ generally means production-ready. Use --min-score as a CI gate:

gadget audit tests/ --base-url https://staging.myapp.com --min-score 80

Reporters

Use --reporter to choose output formats (combine with commas):

  • console — colored terminal output (default)
  • html — self-contained HTML report with embedded screenshots
  • junit — standard JUnit XML for CI/CD
  • json — structured JSON for automation
  • github — GitHub Actions annotations + step summary
gadget run tests/ --reporter console,html,junit

CI Integration

Gadget is designed to run in CI pipelines. Example workflow files are available in the examples/ directory for both GitHub Actions and GitLab CI.

See the full documentation for detailed CI setup guides.

Configuration

Project settings live in .gadgetrc.yaml (created by gadget init). CLI flags override config values. See the getting started guide for all options.

Documentation

  • Getting Started — full guide with all step types, test suites, variable interpolation, CI examples, and exit codes
  • API Reference — complete CLI options, configuration schema, test file format, and TypeScript types