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

@tonomy/tonomy-id-sdk

v0.37.2

Published

The Software Development Kit is used in the Tonomy ID ecosystems to interact with Tonomy identities and services.

Downloads

4,072

Readme

Tonomy ID SDK

The Software Development Kit is used in the Tonomy ID ecosystems to interact with Tonomy identities and services.

See https://docs.tonomy.io for documentation.

The SDK is written in typescript with jest to run tests.

Dependencies

  • Linux debian distribution (Ubuntu 20.0.4 LTS used)
  • Nodejs v20+ suggested installed with nvm

Integration tests:

Sub-Repositories

  • Contracts (inside SDK repo) - Smart contracts to run the governance, identity, DAO, token and other ecosystem tools. This is used to run the integration tests
  • Communication (inside SDK repo) - Service to provide peer-to-peer messaging for Tonomy ID users. This is used to run the integration tests

Build

yarn run build

Build notes:

  • Build just the sdk yarn run build:sdk
  • Build just the cli yarn run build:cli
    • TODO: cli has dependency of argon2 package, which is not needed by SDK and should be moved to a devDependency if these softwares are ever separated.

Run

yarn start

This builds to /build and runs the project in watch mode so any edits you save inside src causes a rebuild to /build.

To do a one-off build, use yarn run build.

Unit tests

Tests individual class and function logic within the SDK.

yarn test:unit

Integration tests

Tests end-to-end functions across more than one service.

First make sure that contracts are complied with the BUILD_TEST flag:

export BUILD_TEST=true
./Tonomy-Contracts/delete-built-contracts.sh
./Tonomy-Contracts/build-contracts.sh

Then run the blockchain or Tonomy Communication service locally.

yarn run test:setup

Then run the tests

yarn run test:integration

To run an individual test with debugging logs example:

DEBUG=tonomy* yarn run test --testNamePattern "Successful login to external website with data request for KYC verification successful" --runTestsByPath /home/dev/Documents/git/tonomy/Tonomy-ID-Integration/Tonomy-ID-SDK/test/externalUser.integration.test.ts

Governance tests

Tests the governance of the system. Can only be run once before a blockchain reset is required.

First run the blockchain or Tonomy Communication service locally.

yarn run test:setup

Then run the tests

yarn run test:governance

Run all tests in the VS Code debugger

Make sure you install the Jest extension (recommended automatically when you open VS Code)

If you also want to do this with the integration tests then run yarn run test:setup first

Then go to any test e.g. test/app.test.ts and you can click ▶️ or right click and press "Debug test". You can also look at the Jest Test Explorer in the left-side activity bar.

Command line interface

yarn run cli

Bootstrapping

yarn run cli bootstrap

Environment variables are required to bootstrap the network. These values are provided by default in test and develpment environments but must be provided externally for non-dev environments:

  • TONOMY_OPS_PRIVATE_KEY: the private key of the operations account that will be used for the tonomy@active account.
  • TONOMY_BOARD_PUBLIC_KEYS: the public keys (in JSON array format) of the network governance multi-signature account that controls governance operations
  • TONOMY_TEST_ACCOUNTS_PASSPHRASE: the passphrase that will be used for the App store test user and demo app users

Type checking

yarn run typeCheck

Linting

Linting is done with eslint. Install the recommended VS Code plugin to see markers in your code.

yarn run lint

Error handling

See errors.ts. All errors have a registered unique enumeration code.

Debugging

Uses debug package. Use export DEBUG="tonomy*" to see all debug logs.