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

@cryptium/id-client

v0.1.0

Published

Client application library for Cryptium ID

Readme

Cryptium ID Client SDK for NodeJS

Back-end part of Cryptium ID SDK for direct integration into a web application.

This library integrates into the website back-end JavaScript using NodeJS.

Use the classes in this library to connect to the Cryptium ID service for user management and authentication.

API

The library provides 2 functions:

  • startConnect (to start a request for verified attributes)
  • checkConnect (to obtain verified attributes with a token)

start

This is a POST to https://id.cryptium.app/api/client/start/connect.

Required headers:

Authorization: Bearer {{authorizationToken}}
Content-Type: application/json
Accept: application/json

JSON request format:

{
    required: String[],
    optional: String[],
    input: Object,
    readonly: String[],
    grant_redirect_uri: String,
}

The required value is an array of attribute names such as email or phone. The user will be required to select a verified value for each attribute that is listd as required. You should only list an attribute as required if your application cannot operate without it. For example, a social media posting app would require the username of the social media account, whereas requiring the same thing for another app might result in higher bounce rates as users might not want to link their social media account to an unrelated app, or might not even have a social media account. Furthermore, Cryptium ID guest users may only verify email, while registered Cryptium ID users may verify additional attributes. Since registering for Cryptium ID itself could be an additional step for new users, keep bounce rates low by only requiring email and make everything else optional (as much as possible).

The optional value is an array of attribute names such as email or phone. The user will be prompted to select a verified value for attribute that is listed as optional, but will be allowed to complete the interaction without them.

The input object is optional and may contain attribute names and values that the application wants to pre-fill in the form. For example, if the application alrady knows the user's email address but needs to re-verify it, it can include { email: '[email protected]' } as the input.

The readonly attribute is optional and may contain attribute names corresponding to provided input that should be readonly. This means they will be pre-filled in the form and the user will not be able to change them. If the user has verified that attribute it can be included in the response. If the user has not verified that attribute with the provided input value, the user will have an opportunity to do that. You can use readonly together with input for both required and optional attributes.

The grant_redirect_uri value is the URL to which Cryptium ID should redirect the user after canceling or completing the form. Cryptium ID will append a token to the query string of this URL so the application can use that when calling the check API.

JSON response format:

{
    redirect: String
}

The redirect value is the Cryptium ID URL to which the application should redirect the user for verifying the requested attributes.

check

This is a POST to https://id.cryptium.app/api/client/check/connect.

Required headers:

Authorization: Bearer {{authorizationToken}}
Content-Type: application/json
Accept: application/json

JSON request format:

{
    token: String,
}

The token value comes from query parameter Cryptium ID inserted into grant_redirect_uri when redirecting the user back to the application.

JSON response format:

{
    profile: Object,
}

The profile value is an object containing verified attribute names and values that the user chose to share with the application.

Build

npm run lint
npm run build