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 🙏

© 2024 – Pkg Stats / Ryan Hefner

@decentralized-identity/sidetree-bitcoin

v0.1.2

Published

Node.js implementation of the Sidetree bitcoin module

Downloads

7

Readme

sidetree-bitcoin

Blockchain-specific code for the Sidetree-based DID Method implementation on Bitcoin

Getting started

Our reference implementation of the blockchain service is based on bitcored. Here is the list of instructions to deploy Sidetree's extension code along with the bitcored service:

  • Install a Bitcored full node using instructions at this link. We reproduce their instructions below since we run bitcored with node v9 rather than v4:

    • Install node version manager (NVM) by following instructions at this link.
    • Install node v9 by using:
      nvm install v9
    • Install Python, ZeroMQ, and Tools. On GNU/Debian distributions, do:
      apt-get install python libzmq3-dev build-essential
    • Install bitcore:
      npm install -g bitcore
    • Start bitcore (ignore --testnet for mainnet):
      bitcore create mynode --testnet
  • Clone this repository to folder $(SIDETREE_BITCOIN_REPO) and run the following:

      cd $(SIDETREE_BITCOIN_REPO)/bitcored-services/sidetree
      npm install bitcore-lib
  • Install insight UI:

    cd $(BITCORE_DIR)
    bitcore install insight-api insight-ui
  • Add a private key from a Bitcoin wallet to $(SIDETREE_BITCOIN_REPO)/bitcored-services/sidetree/config.json

  • Suppose that we install bitcored to $(BITCORE_DIR) on $(NODE_IP), use the following instructions to add Sidetree's blockchain service:

       cd $(BITCORE_DIR)/node_modules
       ln -s $(SIDETREE_BITCOIN_REPO)/bitcored-services/sidetree
       add the string "sidetree" to the services array in $BITCORE_DIR/bitcore-node.json
  • Start the bitcored daemon by running:

     cd $(BITCORE_DIR)
     bitcored
  • Verify that the bitcored installation was successful by pointing the browser to: http://$(NODE_IP):3001/insight/

Once Sidetree extension is running in bitcored correctly, we can now build and run the Sidetree blockchain service that will be talking to our Sidetree extension running in bitcored:

  1. Clone this repo and go to the root folder.
  2. Run npm i to install dependencies.
  3. Modify json/config.json accordingly. Some parameters of interest:
    1. Update bitcoreSidetreeServiceUri to point to the bitcored service configured earlier: e.g. 'http://127.0.0.1:3002/SidetreeBlockchainService/'
  4. Run npm run build to build the service.
  5. Run 'npm start` to start the service.