rLogin Trezor Provider
A Trezor provider connection for rLogin. Still in beta and tested manually for now.
Allow users to connect to your dapp using a Trezor device. Currently works with USB and returns an EIP1193 provider.
The implementation is a bit different for Trezor because it is not a Web3Modal supported provider.
Add the dependecy to your project
yarn add @rsksmart/rlogin-trezor-provider --save
In your dapp, your rLogin implementation should be similar to this:
import RLogin from '@rsksmart/rlogin'
import { trezorProviderOptions } from '@rsksmart/rlogin-trezor-provider'
// ...
const rLogin = new RLogin({
cacheProvider: false,
providerOptions: {
// ... other providers, i.e. WalletConnect or Portis, etc
'custom-trezor': {
...trezorProviderOptions,
options: {
rpcUrl: 'https://public-node.testnet.rsk.co',
chainId: 31
}
}
},
supportedChains: [30, 31]
})
- Similar to the Portis connector, you can only specify a single chainId to connect to.
- The
custom-
needs to be added because Trezor is not a Web3Modal supported provider. The...trezorProviderOptions
contains the Trezor's text and image and connects rLogin to the provider. - Trezor has two apps that work with RSK.
- The RSK App will only work with RSK Mainnet as it uses the correct derivation path of
44'/137'/0'/0/0
- To use RSK Testnet, you must use the Ethereum App on the Trezor. It will use the standard Ethereum derivation path of
44'/60'/0'/0/0
. As of writing, there is no Trezor app that will accept the RSK Testnet path.
- The RSK App will only work with RSK Mainnet as it uses the correct derivation path of
Install dependencies:
yarn i
yarn test
Coverage report with:
yarn run test:coverage
yarn run lint
Auto-fix:
yarn run lint:fix
yarn run build