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

@ascenda-one/github-collector

v0.1.14

Published

Code-forge collaboration collector for Ascenda work telemetry — first-person review and pull-request signals.

Readme

@ascenda-one/github-collector

The collaboration signal family (consolidated report §4.2): review load and pull-request activity, collected from a code forge.

What it emits

| Event | Meaning | Workload leg | |---|---|---| | review_requested_of_me | someone asked you to review | supervision | | review_given | you submitted a review | supervision | | pull_request_opened | you opened a pull request | creation |

The two review events are the report's verification overload concern — the checking burden that concentrates on senior engineers as a team adopts AI.

The rule that shapes the whole package

Only your own activity is ever emitted. An event is produced when the payload says you did the thing or you were asked; a payload about two other people produces nothing at all. ASCENDA_FORGE_LOGIN is required and the collector refuses to run without it, because falling back to the payload's actor would silently start recording colleagues.

This is not squeamishness. "Who reviews for whom" is a map of a team, and a wellbeing rail that assembles one has become a management tool. Concentration of checking load is still answerable — it shows up in your own supervision share, and in cohort aggregates the org rail already suppresses below its minimum cohort size.

What never travels

No repository name, PR title, branch, PR number, review body, or any other person's login. The repository is reduced to an 8-character hash so that "is it always the same repository" stays answerable without naming it. There is no field on the emitted metadata that a title or a body could be placed in, and a test asserts each of those strings is absent from what gets sent.

Withdrawal is not derivable, deliberately

There is no "did not review" event and there must never be one. Reviewing less is exactly the signal the report says must never be machine-interpreted — a quiet week has too many innocent explanations. Nothing here counts absence.

Consent

Collaboration events ride workflow_telemetry, not ide_telemetry, and the collector has its own tool type (github_collector). Both are deliberate: a pull request is not an IDE event, and someone may be willing to share how they work in their editor and not how they work with their team. The two are separately revocable.

Use in GitHub Actions

name: ascenda-collaboration
on:
  pull_request:
    types: [opened, review_requested]
  pull_request_review:
    types: [submitted]

jobs:
  collect:
    runs-on: ubuntu-latest
    steps:
      - run: npx @ascenda-one/github-collector
        env:
          ASCENDA_TOOL_INSTALLATION_ID: ${{ secrets.ASCENDA_TOOL_INSTALLATION_ID }}
          ASCENDA_EVENT_WRITE_TOKEN: ${{ secrets.ASCENDA_EVENT_WRITE_TOKEN }}
          ASCENDA_FORGE_LOGIN: ${{ github.actor }}

The step exits 0 on every path that is not a configuration error, including "nothing to emit". A telemetry step must never be the reason a build goes red.

Locally, pipe a payload instead:

cat examples/sample-review-submitted.json | ascenda-forge-collect pull_request_review