Skip to content

Latest commit

 

History

History
86 lines (62 loc) · 2.12 KB

README.md

File metadata and controls

86 lines (62 loc) · 2.12 KB

Hancock SDK client

Using this package

Dependencies

This lib depends on ES6 Promises that are native in node. But you have to polyfill it in some browsers using es6-promise package.

Installation

Once you have access to the kst registry:

  # with npm
  npm install --save es6-promise @hancock/sdk-nodejs

  # or using yarn
  yarn add es6-promise @hancock/sdk-nodejs

Using all together

The main client is the [[HancockEthereumClient]] class. You have to instantiate it passing an [[HancockConfig]] configuration object to indicate the client which hancock service it has to use.

Configuration object example:

const config = {
  adapter: {
    host: 'http://localhost',
    port: '3000',
    base: '/'
  },
  wallet: {
    host: 'http://localhost',
    port: '3000',
    base: '/'
  },
  broker: {
    host: 'ws://localhost',
    port: '3000',
    base: '/'
  }
}
  • In node:
require('es6-promise').polyfill();
const HancockEthereumClient = require('@hancock/sdk-nodejs').HancockEthereumClient

new HancockEthereumClient(config);
  • In browser:

We need to include the ethereumjs-tx module as an external deependency before the sdk:

<script src="https://raw.githubusercontent.com/ethereumjs/browser-builds/master/dist/ethereumjs-tx/ethereumjs-tx-1.3.3.min.js"></script>

And then use the sdk as an ES6 module (or in module bundlers like webpack)

import * as es6Promise from 'es6-promise';
es6Promise.polyfill();

import { HancockEthereumClient } from '@hancock/sdk-nodejs';
new HancockEthereumClient(config);

Introduction and examples

[[HancockEthereumClient]] provides interfaces to interact with the blockchain allowing common operation like transfers, balance consulting or smart contract interactions. Take a look at the diferent sections of the docs to see examples of use:

  • [[HancockEthereumWalletService]]
  • [[HancockEthereumTransferService]]
  • [[HancockEthereumTransactionService]]
  • [[HancockEthereumSmartContractService]]
  • [[HancockEthereumTokenService]]
  • [[HancockProtocolService]]