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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@blessnetwork/blesscontract

v0.0.3

Published

The CLI tool for interacting with bless contract.

Readme

bless-contract-cli

This project is for interacting with the bless contract. The admin uses the CLI to set the registration contract deadline time or pause the registration on chain.

How to install

Execute the following command to install the script.

npx @blessnetwork/blesscontract

If the installation is successful, you will get the following message.

Usage: @blessnetwork/blesscontract [options] [command]

The CLI tool for interacting with bless contract.

Options:
  -V, --version                  output the version number
  -h, --help                     display help for command

Commands:
  register                       register: the operations for registration contract.
  analyze [options] [whitelist]  analyze: analyze the register user assets
  help [command]                 display help for command

visit https://docs.bless.network for more information.

How to initialize the registration

Execute the following command to get the init help message.

npx @blessnetwork/blesscontract register init --help

Following is the help message.

Usage: @blessnetwork/blesscontract register init [options] <deadline>

initial: initial the registration

Arguments:
  deadline             the deadline of registration, default: now() + n * 24hours

Options:
  --cluster <cluster>  solana cluster: mainnet, testnet, devnet, localnet, <custom>
  --signer <signer>    backend signer: ~/.config/solana/id.json
  -h, --help           display help for command

Execute the following command to init the registration.

npx @blessnetwork/blesscontract register init 1

Notice: The parameter 1 means the deadline is now() + 1 * 24hours.

Notice: The devnet has already been initialized.

How to register

Execute the following command to get the register help message.

npx @blessnetwork/blesscontract register register --help

Following is the help message.

Usage: blesscontract register register [options] <nodeid>

register: register node id on chain

Arguments:
  nodeid                 nodeid: the node id combined with page index as bless node id, nodeid must be base58 of 32 bytes

Options:
  --cluster <cluster>    solana cluster: mainnet, testnet, devnet, localnet, <custom>
  --pindex <page index>  page index: solana bless node page index, default: 0
  --wallet <wallet>      wallet: user wallet, default: ~/.config/solana/id.json
  --bnsigner <bnsigner>  bnsigner: backend signer, default: ~/.config/solana/id.json
  -h, --help             display help for command

Prepare node id key for register

Follow the command to generate the node id.

solana-keygen new -o nodeid.json

Follow the command to get the public key of the node id.

solana-keygen pubkey nodeid.json

Execute the following command to register node id

npx @blessnetwork/blesscontract register register EpuL59hXSGDt6M8UAxw3k1smXwJgJYPon9DUWC7agUcT

How to set deadline

Execute the following command to get the set deadline help message.

npx @blessnetwork/blesscontract register deadline --help

Following is the help message.

Usage: blesscontract register deadline [options] [deadline]

deadline: set/show the deadline of the registration, if is null, show deadline

Arguments:
  deadline             the deadline of registration, default: now() + n * 24hours

Options:
  --cluster <cluster>  solana cluster: mainnet, testnet, devnet, localnet, <custom>
  --signer <signer>    signer: the signer is the backend signer who create the registration account on chain. default ~/.config/solana/id.json
  -h, --help           display help for command

Execute the following command to set the deadline of the registration.

npx @blessnetwork/blesscontract register deadline 2

Notice: The parameter 2 means the deadline is now() + 2 * 24hours.

How to pause registration

Execute the following command to get the pause help message.

npx @blessnetwork/blesscontract register pause --help

Following is the help message.

Usage: @blessnetwork/blesscontract register pause [options] [pause]

pause: set/show the pause status of the registration, the value is true/false, if is null, show status

Arguments:
  pause                pause: the status of the registration

Options:
  --cluster <cluster>  solana cluster: mainnet, testnet, devnet, localnet, <custom>
  -h, --help           display help for command

Execute the following command to pause the registration.

npx @blessnetwork/blesscontract register pause true

Execute the following command to resume the registration.

npx @blessnetwork/blesscontract register pause false

Execute the following command to check the current pause status.

npx @blessnetwork/blesscontract register pause

How to execute blesstoken command

Execute the following command to get the blesstoken help message.

npx @blessnetwork/blesscontract blesstoken --help

Following is the help message.

Usage: @blessnetwork/blesscontract blesstoken [options] <wallets> <mint> <mintAuthority>

blesstoken: initial blesstoken registration

Arguments:
  wallets              wallets: wallets is the wallet 1-5 that distrubuted the bless token by the contract, value should be base58 sperate by `,`.
                       Wallet1 is Investor, Wallet2 is (Team + advisor), Wallet3 is Foundation, Wallet4 is (Ecosystem + Liquidity Provision + TGE
                       Marketing), Wallet5 is (Community Rewards)
  mint                 mint: the mint token public key(base58)
  mintAuthority        mintAuthority: the mint authority, the value is file path of mintAuthority

Options:
  --cluster <cluster>  solana cluster: mainnet, testnet, devnet, localnet, <custom>
  -h, --help           display help for command
  1. Prepare the Mint Authory Keypair.
# Prepare the mint Authority keypair
solana-keygen new -o authority.json
  1. Create the mint token
spl-token create-token --mint-authority authority.json

The command output Ep9fFc5oKgbtkd1kVSKTFy7mariTdavtU6jJrT2SBcff

  1. Create the 5 major wallets
solana-keygen new -o w1.json
solana-keygen new -o w2.json
solana-keygen new -o w3.json
solana-keygen new -o w4.json
solana-keygen new -o w5.json
  1. Guarantee the 5 major wallets account exist on the chain (for devnet or localnet use the airdrop )
solana airdrop 1 $(solana-keygen pubkey w1.json)
solana airdrop 1 $(solana-keygen pubkey w2.json)
solana airdrop 1 $(solana-keygen pubkey w3.json)
solana airdrop 1 $(solana-keygen pubkey w4.json)
solana airdrop 1 $(solana-keygen pubkey w5.json)
  1. create the associate accounts of 5 major wallets
spl-token create-account --owner w1.json Ep9fFc5oKgbtkd1kVSKTFy7mariTdavtU6jJrT2SBcff
spl-token create-account --owner w2.json Ep9fFc5oKgbtkd1kVSKTFy7mariTdavtU6jJrT2SBcff
spl-token create-account --owner w3.json Ep9fFc5oKgbtkd1kVSKTFy7mariTdavtU6jJrT2SBcff
spl-token create-account --owner w4.json Ep9fFc5oKgbtkd1kVSKTFy7mariTdavtU6jJrT2SBcff
spl-token create-account --owner w5.json Ep9fFc5oKgbtkd1kVSKTFy7mariTdavtU6jJrT2SBcff
  1. Use the bless contract cli to invoke the contract logic.
npx @blessnetwork/blesscontract blesstoken FrMxAhmD3QzF5qhN8bLqKzb7m8sTiXAZmMMh6ZpvVZTM,4EDnpHM7m3UnpqmaEFomZa9YPYsXshkWL9NLKMoGNewr,FAxc73vzyLpsbsch7cKT8JNVfhFt7YSisp8xD6CF7GsT,HKuXKEyhhzyRt5WeFQtELPng5Q6gXua4UzRAcaoGj4Fi,4i9d69rJRHEf3jwigajzX1QYc2wBcndkBna5JqEh8qTJ 9LCLCwANHQqCj2R4rWcvkka1tTMsfByVqa5gzuDCjYeg  authority.json