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

secure-biometric-interface-integrator

v0.9.1

Published

A vanillaJs library for integrating Secure Biometric Devices

Downloads

184

Readme

Secure Biometric Interface

A standalone vanillajs library component for interacting with SBI devices and auth capture Face, Finger & Iris detail.

Build

To build up the library

npm run build

To generate a package from it

npm pack

For publishing the package

npm publish

Local

In Html

Either you build the library or serve the libray

npm run build

or 

npm run start

After that you can serve the index.html file from the below folder

secure-biometric-interface-integrator
└─── example
     └─── html
          │─── index.html
          └─── mbd.js

How are we implement the library in vanilla javascript, checkout the mbd.js file (see above path), below you can see the snippet also.

SecureBiometricInterface.init({
  container: document.getElementById("secure-biometric-interface-integration"),
  sbiEnv: BIOMETRIC_ENV_OBJECT,
  buttonLabel: BUTTON_LABEL,
  disable: DISABLE_OR_NOT,
  transactionId: TRANSACTION_ID,
  onCapture: SUCCESS_CALLBACK_METHOD,
  onErrored: ERROR_CALLBACK_METHOD
})

In React

For running our library in react, first of all build the secure-biometric-interface-integrator library and bundle up as a pakcage

npm run package

After that you can go to our react example of the project, install the node_modules and run as a react app

secure-biometric-interface-integrator
└─── example
     └─── react
          │─── public
          │─── src
          |    │─── App.js
          |    └─── index.js
          └─── package.json

Code snippet of using secure-biometric-interface-integrator library in react is given below ( you can also find it in App.js file of src folder)

// import the library first
import { init } from "secure-biometric-interface-integrator";

// call the library method
init({
    container: document.getElementById("secure-biometric-interface-integration"),
    sbiEnv: BIOMETRIC_ENV_OBJECT,
    buttonLabel: BUTTON_LABEL,
    disable: DISABLE_OR_NOT,
    transactionId: TRANSACTION_ID,
    onCapture: SUCCESS_CALLBACK_METHOD,
    onErrored: ERROR_CALLBACK_METHOD
});

Props

Common props you may want to specify include:

| prop | type | default value | note | | -------------- | -------- | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | container | HTMLElement | | an html div element from where we will inject secure-biometric-interface-integrator UI | | buttonLabel | string | Scan & Verify | Capture button label | | langCode | string | en | Language for the component, available language are en, eng, hi, hin, ta, tam, ka, kar, ar, ara| | transactionId| string | | Transaction id of the current biometric authorization | | onCapture | func | | The function to be called on a successful capture with Biometric response. | | onErrored | func | | optional callback function on capture failure with error msg string. | | sbiEnv | Object | See below | Biometric environment detail | | disable | boolean | false | To disable verify button |

Prop sbiEnv

For more information check MDS Specification

| field | type | valid values | default value | note | | -------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | -------------------------------------------------------------------------------- | | env | string | ("Staging", "Developer", "Pre-Production", "Production") | "Staging" | The target environment. | | captureTimeout | number | | 30 | Max time the app will wait for the capture api call. | | discTimeout | number | | 30 | Max time the app will wait for the discover api call. | | dinfoTimeout | number | | 30 | Max time the app will wait for the device info api call. | | domainUri | string | | window.origin | URI of the authentication server. | | faceCaptureCount | number | Always set to 1 | 1 | Number of biometric data that is collected for face. | | faceCaptureScore | number | Floating point number ranges from 0-100. | 70 | Expected quality score that should match to complete a successful face capture | | fingerBioSubtypes | string | ["Left IndexFinger", "Left MiddleFinger", "Left RingFinger", "Left LittleFinger", "Left Thumb", "Right IndexFinger", "Right MiddleFinger", "Right RingFinger", "Right LittleFinger", "Right Thumb", "UNKNOWN"] | "UNKNOWN" | Array of bioSubType for finger. | | fingerCaptureCount | number | Ranges from 1 to 10 | 1 | Number of biometric data that is collected for finger. | | fingerCaptureScore | number | Floating point number ranges from 0-100. | 70 | Expected quality score that should match to complete a successful finger capture | | irisBioSubtypes | string | ["Left", "Right", "UNKNOWN"] | "UNKNOWN" | Array of bioSubType for iris | | irisCaptureCount | number | Ranges from 1 to 2 | 1 | Number of biometric data that is collected for Iris. | | irisCaptureScore | number | Floating point number ranges from 0-100. | 70 | Expected quality score that should match to complete a successful iris capture | | portRange | string | Port should be under that range of 4501 - 4600. | "4501-4600" | Range of port that will be scanned for available devices |

License

  • axios - is a promised-based HTTP client for JavaScript licensed under MIT
  • i18next - is an internationalization framework for browser or any other javascript environment licensed under MIT
  • jose - a JavaScript module for JSON Object Signing and Encryption, providing support for JSON Web Tokens (JWT), JSON Web Signature (JWS), JSON Web Encryption (JWE), JSON Web Key (JWK), JSON Web Key Set (JWKS), licensed under MIT
  • rollup - is a module bundler for JavaScript which compiles small pieces of code into something larger and more complex, such as a library or application, licensed under MIT
  • rollup-plugin-postcss - used for seamless integration between rollup & postcss , licensed under MIT
  • @rollup/plugin-commonjs - a Rollup plugin to convert CommonJS modules to ES6, so they can be included in a Rollup bundle, licensed under MIT
  • @rollup/plugin-image - A Rollup plugin which imports JPG, PNG, GIF, SVG, and WebP files, licensed under MIT
  • @rollup/plugin-json - A Rollup plugin which Converts .json files to ES6 modules, licensed under MIT
  • @rollup/plugin-node-resolve - a Rollup plugin which locates modules using the Node resolution algorithm, for using third party modules in node_modules, licensed under MIT
  • @rollup/plugin-terser - a Rollup plugin to compress the output code, licensed under MIT