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

zectools

v0.1.4

Published

Watch Zcash from your terminal: blocks, shielded pools, network upgrades and the halving, read straight from the network.

Readme

ZecTools

Watch Zcash from your terminal.

npm i -g zectools

zec watch --alert

Every command is a gRPC read against a public lightwalletd, the same endpoint a wallet talks to. No key, no account, no server, no telemetry.

Commands

zec watch             live tail of every block: transactions, shielded notes
                       per pool, spacing. --alert on big shielded blocks
zec info              the network right now: height, consensus branch, pending
                       upgrade, subsidy, next halving, the server
zec pools             the shielded pools by their own commitment trees, how
                       fast each grew, and how much ZEC each holds
zec block [height]    one block, transaction by transaction, per pool
zec mempool           what is waiting, shielded against transparent
zec upgrades          every network upgrade, which rules are live, what is next
zec supply            block subsidy, issuance so far, halvings past and next
zec check <address>   transparent: balance and unspent outputs.
                       shielded: an honest answer about why there is none

Options

--alert            desktop notification (watch)
--min <notes>      shielded notes in one block that trigger an alert, default 200
--poll <seconds>   poll interval, default 20 (watch)
--window <blocks>  how far back pools looks, default 200 (about 4 hours)
--limit <n>        rows to print (block, check)
--lwd <host:port>  another lightwalletd, or set ZEC_LWD
--json             machine-readable output
NO_COLOR=1         plain text, for pipes and CI

How it reads the chain

A compact block is what a light wallet downloads: for every transaction, the nullifiers, note commitments and ephemeral keys of its shielded components, plus its transparent inputs and outputs. It does not carry amounts, addresses or memos for anything shielded, and neither does this CLI. What it does carry is enough to count: how many transactions touched a pool, how many notes each pool gained, and, from the chain metadata on each block, the size of every note commitment tree.

zec pools checks its own reading: the tree must grow by exactly the number of outputs the blocks in between carried. If it does not, the row says so.

Pool balances in ZEC need a full node. zec pools and zec supply ask a public one (getblockchaininfo via the Nighthawk explorer, then the Tatum gateway) and say "no node answered" rather than guess.

What it is not

It holds no keys and reads no shielded balance: zec check on a shielded address explains that and stops. Zcash's point is that this is impossible, and a tool that pretended otherwise would be lying.

MIT.