0.1.2 • Published 4 years ago

@zippie/vault-web3-provider v0.1.2

Weekly downloads
1
License
BSD-3-Clause
Repository
github
Last release
4 years ago

Zippie Vault Web3 Provider

Web3 Provider for Zippie Vault allowing for easy onboarding and access to Web3 DApps

Requests are signed locally using Vault Derived Keys and sent to query.zippie.org server for submission to the Ethereum Network

Dependencies

Install from npm repository

npm install @zippie/vault-web3-provider

Building

npm install

Run Tests

npm run test

Web3 Support

  • eth.sign()
  • eth.getAccounts()
  • eth.getBalance()
  • eth.signTransaction()
  • eth.personal.sign()

How to Use

Imports

import Vault from '@zippie/vault-api'
import * as zippieprovider from '@zippie/vault-web3-provider'
import * as Web3 from 'web3'

Initialise the Vault

this will redirect the user on boarding if required

const vault = new Vault()
vault
  .setup()
  .then(_ => {
    vault.signin().then(_ => {
    console.log('Initialised Vault: ' + result)
    })
  },
  (error) => {
    console.log('Error initialising vault: ' + error)
  }
);

Initialise Web3 Provider

on the ethereum network of your choice .eg kovan, ropsten, mainnet

var ethereum = zippieprovider.init(vault, { network: 'kovan' })

Add Accounts

Set up some accounts using a vault key path

 zippieprovider
  .addAccount('m/0')
  .then((address) => {
    console.log(address)
  }
);

Initialise Web3.js

and finally set up Web3.js

if(window.web3 === undefined) {
  window.web3 = new Web3(ethereum)
}

web3.eth.getAccounts()
  .then((accounts) => {
    console.log('accounts: ' + accounts)
  }
);

After that you now have a working web3.js object and can use the standard API.

License

BSD-3-Clause

0.1.2

4 years ago

0.1.1

4 years ago

0.1.0

5 years ago

0.0.9

5 years ago

0.0.7

6 years ago

0.0.6

6 years ago

0.0.5

6 years ago

0.0.4

6 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago