@zippie/vault-web3-provider
v0.1.2
Published
Web3.js provider using Zippie Vault
Downloads
12
Keywords
Readme
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.