Deploy HRC721 Token

You can use this HRC721 Token Template to issue your own NFTs and build corresponding DApps on Htmlcoin.

You can refer to this article for a detailed description of NFT and HRC721.

  1. Install the Solidity compiler (solc).

  2. Install Go. Put the solc binary in go/bin

  3. Install Solar.

    1. go get -u github.com/htmlcoin/solar/cli/solar

  4. Install HRC721 (preflight)

    1. git clone https://github.com/htmlcoin/HRC721Token.git

cd HRC721Token

npm install

  1. Run Htmlcoin (set RPC in config, enable logevents in config)

    1. htmlcoin-qt -server -rpcuser=USER -rpcpassword=PASSWORD -rpcport=4889

  2. Deploy HRC721 using Solar. This command should be

    1. solar deploy contracts/HRC721.sol '["name","symbol"]' --htmlcoin_rpc=http://USER:PASSWORD@127.0.0.1:4889

  1. Backup the contract address shown and the solar.development.json that is generated under current directory with information about the deployed contract, like the sender address, contract address, ABI and etc.

Using Htmlcoin QT

  1. Mint some HRC721 tokens.

    1. Choose "Smart Contracts-Send To" in Htmlcoin QT.

    2. Copy over the contract address and the top ABI in the backed up solar.development.json

    3. Choose the function mintwithURI and fill the form with specified "to address" and "token id". (The address is in hex format, you have to use the base58/hex decoder to transfer it to a base58 format)

    4. Choose the contract sender address as "Sender Address", since only the contract owner can mint new tokens.

    5. Press "SEND TO CONTRACT" button and wait for the created transaction to be confirmed.

  1. Call HRC721 functions.

    1. Choose "Smart Contracts-Call" in Htmlcoin QT.

    2. Copy over the contract address and ABI to the form.

    3. Choose any function you want execute and Press "CALL CONTRACT" button. The you can see the result.

  1. Check the contract in the blockchain explorer. You can find the token name, total supply and other information in the page.