Simple and secure way to sign transactions
Ledger
Keeper Wallet
In order to work with Signer, you need to link an external provider library. Provider securely stores user's private data. Your web app and Signer itself do not have access to user's private key and seed phrase
Creates user account from SEED. Can be used at the app debugging stage
To install Signer library
npm i @waves/signer
To install ProviderSeed
npm i @waves/provider-seed @waves/waves-transactions
To install Signer library
import { Signer } from '@waves/signer';
import { ProviderSeed } from '@waves/provider-seed';
import { libs } from '@waves/waves-transactions';
const seed = libs.crypto.randomSeed(15);
const signer = new Signer({
// Specify URL of the node on Testnet
NODE_URL: 'https://nodes-testnet.wavesnodes.com'
});'
signer.setProvider(new ProviderSeed(seed));'
Uses an account created or imported into the Waves.Exchange web app via user's private key or seed phrase
To install Signer library
npm i @waves/signer
To install ProviderSeed
npm i @waves/provider-seed @waves/waves-transactions
To install Signer library
import { Signer } from '@waves/signer';
import { ProviderSeed } from '@waves/provider-seed';
import { libs } from '@waves/waves-transactions';
const seed = libs.crypto.randomSeed(15);
const signer = new Signer({
// Specify URL of the node on Testnet
NODE_URL: 'https://nodes-testnet.wavesnodes.com'
});'
signer.setProvider(new ProviderSeed(seed));'
Uses an Email-based Waves.Exchange account
To install Signer library
npm i @waves/signer
To install ProviderSeed
npm i @waves/provider-seed @waves/waves-transactions
To install Signer library
import { Signer } from '@waves/signer';
import { ProviderSeed } from '@waves/provider-seed';
import { libs } from '@waves/waves-transactions';
const seed = libs.crypto.randomSeed(15);
const signer = new Signer({
// Specify URL of the node on Testnet
NODE_URL: 'https://nodes-testnet.wavesnodes.com'
});'
signer.setProvider(new ProviderSeed(seed));'
Cryptowallet as browser extension
To install Signer library
npm i @waves/signer
To install ProviderSeed
npm i @waves/provider-seed @waves/waves-transactions
To install Signer library
import { Signer } from '@waves/signer';
import { ProviderSeed } from '@waves/provider-seed';
import { libs } from '@waves/waves-transactions';
const seed = libs.crypto.randomSeed(15);
const signer = new Signer({
// Specify URL of the node on Testnet
NODE_URL: 'https://nodes-testnet.wavesnodes.com'
});'
signer.setProvider(new ProviderSeed(seed));'
Uses Ledger Nano X or Ledger Nano S device
To install Signer library
npm i @waves/signer
To install ProviderSeed
npm i @waves/provider-seed @waves/waves-transactions
To install Signer library
import { Signer } from '@waves/signer';
import { ProviderSeed } from '@waves/provider-seed';
import { libs } from '@waves/waves-transactions';
const seed = libs.crypto.randomSeed(15);
const signer = new Signer({
// Specify URL of the node on Testnet
NODE_URL: 'https://nodes-testnet.wavesnodes.com'
});'
signer.setProvider(new ProviderSeed(seed));'
MetaMask users can only transfer tokens and invoke dApp scripts in the Waves network
To install Signer library
npm i @waves/signer
To install ProviderSeed
npm i @waves/provider-seed @waves/waves-transactions
To install Signer library
import { Signer } from '@waves/signer';
import { ProviderSeed } from '@waves/provider-seed';
import { libs } from '@waves/waves-transactions';
const seed = libs.crypto.randomSeed(15);
const signer = new Signer({
// Specify URL of the node on Testnet
NODE_URL: 'https://nodes-testnet.wavesnodes.com'
});'
signer.setProvider(new ProviderSeed(seed));'
Creates user account from SEED. Can be used at the app debugging stage
Uses an account created or imported into the Waves.Exchange web app via user's private key or seed phrase
Uses an Email-based Waves.Exchange account
Cryptowallet as browser extension
Uses Ledger Nano X or Ledger Nano S device
MetaMask users can only transfer tokens and invoke dApp scripts in the Waves network
To install Signer library
npm i @waves/signer
To install ProviderSeed
npm i @waves/provider-seed @waves/waves-transactions
To install Signer library
import { Signer } from '@waves/signer';
import { ProviderSeed } from '@waves/provider-seed';
import { libs } from '@waves/waves-transactions';
const seed = libs.crypto.randomSeed(15);
const signer = new Signer({
// Specify URL of the node on Testnet
NODE_URL: 'https://nodes-testnet.wavesnodes.com'
});'
signer.setProvider(new ProviderSeed(seed));'
Sections of documentation will allow you to dive quickly into developing
We are always happy to hear from you what can be improved in Waves ecosystem products