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

@sidestr/spec

v0.0.7

Published

the sidestr specification and its reference implementation (siding); installed as a git dependency by the sidestr package

Readme

sidestr

User activated sidechains: Bitcoin's rules beside a Bitcoin-family chain, blocks valid because they are signed, no subsidy, every coin a coin locked on the parent, and the rules carried as signed documents each node chooses to adopt. Signers order blocks; users enforce the rules.

  • SPEC.md: the protocol, draft 0.0.4.
  • paper/: the white paper, sidestr: User-Activated Sidechains, draft 27 September 2026 (Markdown, PDF).
  • The first chain is the txbt4 siding, a chain beside the BLAKE2b testnet4 that keeps making blocks while the parent waits at its retarget. Level 1, one signer, worthless coins.

The sibling of datstr: the same engine, the same documents, the same rule that everything a verifier does runs in a browser tab.

siding/

The reference implementation, on the same engine as datstr and blaketestnode:

siding/chain.json      the txbt4 siding: id, parent, challenge, the four genesis pegs, powLimit, prefix
chains/<name>/         every other chain, one document each (`siding new` writes them)
siding/lib/overlay.mjs the network overlay, the block-signature rule, the claim and burn rules (SPEC 3, 4, 6, 7)
siding/lib/announce.mjs the tip announcement: a chain found by its id alone (SPEC 11)
siding/lib/parent.mjs  the parent over RPC: peg-ins scanned and claimed, burns paid from the peg wallet
siding/bin/siding.mjs  new | key | genesis | produce | sync | send | faucet

node siding/bin/siding.mjs new --name X --prefix Y     a whole chain: document, key, genesis, the lines to run it
node siding/bin/siding.mjs produce --chain C --dir D   blocks on an interval, sooner with transactions
node siding/bin/siding.mjs sync --url URL --dir D      validate a producer's chain, no key needed

Needs checkouts of bitcoin-desktop/schema (SCHEMA) and bitcoin-blake/blaketestnode (BLAKETESTNODE, the block-file node lib/chain.mjs builds on). The genesis is deterministic: the same chain document gives the same block 0, byte for byte.

Around it: the explorer and wallet take ?chain=<id> and find the chain from its announcement; the directory lists every chain that has announced itself.

Picking this up as a developer or an agent: start with siding/README.md, the map of the reference implementation and what is not yet built.