Skip to content

jahsus-waves/provider-web

 
 

Repository files navigation

ProviderWeb

Overview

​ ProviderWeb developed by Waves.Exchange implements a Signature Provider for Signer protocol library. Signer enables easy deploy dApps based on Waves blockchain. User's private key and SEED phrase are encrypted and stored in Waves.Exchange, so your web app does not have access to them. ​

For now, signing is implemented for all types of transactions except exchange transactions. ​

Getting Started

1. Library installation

​ To install Signer and ProviderWeb libraries use ​

npm i @waves/signer @waves.exchange/provider-web

​ For Windows, use the following format:

npm i @waves/signer '@waves.exchange/provider-web'

​ ​

2. Library initialization

​ Add library initialization to your app. ​

  • For Testnet: ​
    import Signer from '@waves/signer';
    import Provider from '@waves.exchange/provider-web';
    
    const signer = new Signer({
      // Specify URL of the node on Testnet
      NODE_URL: 'https://nodes-testnet.wavesnodes.com'
    });
    signer.setProvider(new Provider());

  • For Mainnet: ​
    import Signer from '@waves/signer';
    import Provider from '@waves.exchange/provider-web';
    
    const signer = new Signer();
    signer.setProvider(new Provider());

3. Basic example

​ Now your application is ready to work with Waves Platform. Let's test it by implementing basic functionality. For example, we could try to authenticate user, get his/her balances and transfer funds. ​

const user = await signer.login();
const balances = await signer.getBalance();
const [broadcastedTransfer] = await signer
  .transfer({amount: 100000000, recipient: 'alias:T:merry'}) // Transfer 1 WAVES to alias merry
  .broadcast(); // Promise will resolved after user sign and node responseconst [signedTransfer] = await signer
  .transfer({amount: 100000000, recipient: 'alias:T:merry'}) // Transfer 1 WAVES to alias merry
  .sign(); // Promise will resolved after user sign

Constructor

new Provider(clientOrigin: string, logs: boolean);

​ Creates an object that features user authentication and transaction signing. ​ You can use optional parameters for debugging. ​

Parameter Default value Description
clientOrigin https://waves.exchange/signer URL of the Provider instance. For debugging, you can launch the Provider instance on your server.
logs false Logging level. If true, all events are logged
Usage:
var provider = new Provider(
  'http://localhost:8081/iframe-entry',
  true
);

More examples

​ Getting Started with Waves Signer and ProviderWeb: https://medium.com/@izhur27/893017c9b7ae?. Collapse

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 92.2%
  • HTML 4.4%
  • JavaScript 3.3%
  • Dockerfile 0.1%