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

node-vcx-wrapper

v0.8.0-dev-1628

Published

Node wrapper for vcx

Readme

VCX NodeJS Wrapper

This is a NodeJS wrapper for VCX library. VCX is the open-source library on top of Libindy which fully implements the credentials exchange.

Note: This library is currently in experimental state.

Contribution Guide

Make sure you have these packages installed:

  • StandardJS
  • Typescript
  • TSLint

Also this has a dependency on:

  • libvcx debian Because it creates a symlink (/usr/lib/libvcx.so)

Run this commands before submitting your PR:

npm run lint

Documentation:

Run these commands:

npm install
npm ci
npm run doc-gen
  • A directory will be created locally ./docs which contains an index.html file which can be used to navigate the generated documents.

Run Demo

  • The demo represents example how 2 actors, Alice and Faber institution, exchange credentials.
  • They may consult Indy blockchain (pool of Indy nodes) to find out certain pieces of information. Faber and Alice are represented by 2 scripts faber.js and alice.js but you could imagine that there's a webserver running code alike what's inside faber.js and there's a perhaps smartphone or laptop running code alike in alice.js.
  • Faber and Alice in the demo also don't exchange the credentials peer to peer. Instead, the exchange happens through intermediary service represented by Dummy Cloud Agent. The data Alice and Faber are exchanging over Dummy Cloud Agent are however encrypted and cannot be read by the Dummy Cloud Agent. The Dummy Cloud Agent is something like illiterate postman. He'll take a letter from one party and delivers it to the other party. But he's unable to read the messages he's handling.

Pre-requirements

Libraries

Before you'll be able to run demo, you need to make sure you've compiled

Library binaries must be located /usr/local/lib on OSX, /usr/lib on Linux.

Indy pool

You'll also have to run pool of Indy nodes on your machine. You can achieve by simply running a docker container which encapsulates multiple interconnected Indy nodes. Instructions here.

Steps to run demo

  • Install NodeJS dependencies
npm install
  • Compile LibVCX Wrapper
npm run compile
npm run demo:faber
  • Give it a few seconds, then run Alice's agent which will connect with Faber's agent
npm run demo:alice

Demo with Posgres wallet

You can also run demo in mode where both Faber and Alice are using Postgres wallets. Follow instructions to compile postgres wallet plugin and startup local postgres docker container.

Once yu have that ready, use these commands to start demo in postgres mode.

npm run demo:faber:pg
npm run demo:alice:pg

Demo with webhook notifications

Another feature are webhook notifications. If you run sample webhook notification server by running: npm run demo:notifyserver

This will start new http server on localhost:7209.

Opened port on localhost:7209 will modify Faber and Alice in the demo in following way: They will register their notification webhook in cloud agency. Everytime cloud agent will receive a message on behalf of the owner, it will send notification to webhook url specified in agent configuration. In the case of this demo, it's by default localhost:7209/notifications/faber and localhost:7209/notifications/alice.