Skip to content
Qtum DApp JavaScript Library
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
example
src
test/contracts
.gitignore
.npmignore
README.md
deploy-test-contracts.sh
package-lock.json
package.json
tsconfig.json
tslint.json
webpack.config.js
yarn.lock

README.md

The QTUM JavaScript library for Smart Contract development.

See documentation.

See 中文 API 文档.

See companion tutorial.

Install

npm install qtumjs

This is a sample code snippet that transfer ERC20 tokens:

import {
  QtumRPC,
} from "qtumjs"

const repoData = require("./solar.json")
const qtum = new Qtum("http://qtum:test@localhost:3889", repoData)

const myToken = qtum.contract("zeppelin-solidity/contracts/token/CappedToken.sol")

async function transfer(fromAddr, toAddr, amount) {
  const tx = await myToken.send("transfer", [toAddr, amount], {
    senderAddress: fromAddr,
  })

  console.log("transfer tx:", tx.txid)
  console.log(tx)

  await tx.confirm(3)
  console.log("transfer confirmed")
}

The full source code.

This example uses async/await (supported natively by Node 8+).

Running Tests

docker run -it --rm \
  --name qtumjs \
  -v `pwd`:/dapp \
  -p 5889:3889 \
  hayeah/qtumportal

Enter into container:

docker exec -it qtumjs sh

Generate initial blocks:

qcli generate 600

qcli getbalance

2000000.00000000

Deploy test contracts:

sh deploy-test-contracts.sh

Build and run tests:

npm build
npm run test
You can’t perform that action at this time.