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

x402-anychain

v0.1.29

Published

Self-hosted x402 facilitator for ANY EVM chain. Add a chain by adding an RPC. First-class support for yield-bearing (NAV-up) settlement assets.

Readme

x402-anychain

Self-hosted, multi-chain x402 facilitator. Holds gas, never funds.

Unaudited.

Why

The CDP facilitator settles 5 networks. This one settles 22 — every EVM chain PublicNode serves — because /verify and /settle are chain-agnostic: both EVM transfer paths (EIP-3009, Permit2) are signature-based, so one adapter serves every eip155:*. Adding a chain is an RPC URL and a funded signer, not new code.

npm i -g x402-anychain
x402-anychain gas      # exactly what to fund, and where
x402-anychain serve

One address, every chain

An EVM address derives from the key alone, not the chain. So X402_SIGNER_KEY yields the same address on all 22 — funding is one address topped up per chain, not a matrix of accounts. The signer holds only gas; it can never touch a payment.

Two things most facilitators get wrong

1. A percentage fee cannot cover a flat cost. Sponsoring gas costs the same at any payment size. Measured on Robinhood Chain, settlement is ~$0.011 — so a 1bps fee only breaks even at a $110 payment. /quote returns a flat gas × margin fee and the minimum viable payment per chain.

2. Sub-dollar payments need batching.

| batch | gas/payment | break-even payment | |---|---|---| | 1 | $0.01105 | $110.50 | | 100 | $0.0001105 | $1.11 | | 1000 | $0.0000111 | $0.11 |

Each queued payment stays an independent EIP-3009 signature — nothing is netted or trusted, and a failure drops one authorization, not the batch.

Fee-on-transfer and yield-bearing assets

/verify checks what the payee receives, not what the payer signed. On a taxed asset those differ, and verifying the signed amount attests to money that never arrived. Resource servers gross up at quote time via grossUpFor; the payee gets exactly what it asked for and the tax still accrues.

Rebasing tokens are unsupported by construction: the payer signs an exact smallest-unit amount, so a balance that moves before settlement invalidates it. NAV-up wrappers are fine.

Discovery

Agents don't shop for facilitators — they obey whatever a 402 names. So ship services and index them:

  • GET /discovery/resources (and /list) — our own Bazaar; the spec is open
  • GET /.well-known/x402.json — static manifest for crawlers
  • POST /discovery/register — add a resource

Resources this facilitator has actually settled are marked verified.

Stats agents can recompute

/stats and /historicalStats compute trailing yield live from archive state and ship the block range and method with every number. NAV growth is reported alongside totalAssets, because NAV alone rises when supply burns — which is redistribution, not earnings, and the caveats say so.

MIT.