JSPM

  • Created
  • Published
  • Downloads 92944
  • Score
    100M100P100Q164584F
  • License SEE LICENSE IN LICENSE.md

High-level javascript interface for Trezor hardware wallet.

Package Exports

  • @trezor/connect-web
  • @trezor/connect-web/lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@trezor/connect-web) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@trezor/connect-web

Build Status NPM Known Vulnerabilities

This package is bundled into web implementations.

Contains minimum of code required to:

  • Define TrezorConnect API object
  • Create and handle communication between @trezor/connect-iframe hosted on https://connect.trezor.io/<version>/iframe.html
  • Create and handle communication and lifecycle of @trezor/connect-popup hosted on https://connect.trezor.io/<version>/popup.html

Usage

yarn add @trezor/connect-web
import TrezorConnect from '@trezor/connect-web';

// set manifest once anywhere in your app index
TrezorConnect.manifest({
    appUrl: 'https://my.app.com',
    email: 'developer@email.com',
});

function getAddress() {
    const btcAddress = await TrezorConnect.getAddress({ path: "m/84'/0'/'0'/0/0", coin: 'btc' });
    if (btcAddress.success) {
        return btcAddress.payload; // { address: "xxx" }
    }
}

For more examples see TrezorConnect API documentation

NPM publish:

Follow instructions how to publish @trezor package to npm registry.

Dev

It is possible to run local dev server with iframe and popup using:

yarn workspace @trezor/connect-web dev

Note: don't forget to visit https://localhost:8088/ and allow self-signed certificate. No UI is displayed here.

With dev server running, you may initialize TrezorConnect like this

import TrezorConnect from '@trezor/connect-web';

const connectOptions = {
    connectSrc: 'https://localhost:8088/',
    manifest: {
        email: 'info@trezor.io',
        appUrl: '@trezor/suite',
    },
};