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

@iota/hierarchies

v0.1.8

Published

WASM bindings for IOTA Hierarchies - To be used in JavaScript/TypeScript

Readme

IOTA Trust Hierarchies

Install the Library

If your project does not contain it already, install the peer dependency @iota/iota-sdk as well.

npm install @iota/iota-sdk

You can install the latest alpha version of the library by running the following command:

npm install @iota/hierarchies@alpha

Build the Library

Alternatively, you can build the bindings yourself if you have Rust installed. If not, refer to rustup.rs for the installation.

Requirements

  • Node.js (>= v20)
  • Rust (>= 1.65)
  • Cargo (>= 1.65)
  • for running example: a local network node with the IOTA hierarchies package deployed as being described here

1. Install wasm-bindgen-cli

If you want to build the library from source, you will first need to manually install wasm-bindgen-cli. A manual installation is required because we use the Weak References feature, which wasm-pack does not expose.

cargo install --force wasm-bindgen-cli

2. Install Dependencies

After installing wasm-bindgen-cli, you can install the necessary dependencies using the following command:

npm install

3. Build

You can build the bindings for node.js using the following command:

npm run build:nodejs

You can build the bindings for the web using the following command:

npm run build:web

Web Usage

The web version of this library requires explicit WASM initialization before any other function can be used. Call and await the init() function once during your application startup:

import { HierarchiesClientReadOnly, init } from "@iota/hierarchies/web";
import { getFullnodeUrl, IotaClient } from "@iota/iota-sdk/client";

// Initialize the WASM module (required, must be awaited before any other usage)
await init();

const iotaClient = new IotaClient({ url: getFullnodeUrl("testnet") });
const client = await HierarchiesClientReadOnly.create(iotaClient);

If you are using a bundler like Vite, pass the WASM URL explicitly:

import { init } from "@iota/hierarchies/web";
import wasmUrl from "@iota/hierarchies/web/hierarchies_wasm_bg.wasm?url";

await init(wasmUrl);

Note: The Node.js version (@iota/hierarchies/node) does not require calling init() — the WASM module is loaded automatically.