This package has been deprecated

Author message:

Working to find more suitable artifacts.

@rsksmart/rns-artifacts

1.1.0 • Public • Published

logo

rns-artifacts

npm @RSKSmart/rns-artifacts

RNS library for smart contract development.

It provides implementations of RNS Registry, Registrars, and Resolvers which you can deploy as-is or extend to suit your needs, as well as Solidity components to build custom contracts and more complex decentralized systems.

Install

npm install rns-artifacts

Usage

To write your custom contracts, import ours and extend them through inheritance.

pragma solidity ^0.5.2;

import 'rns-artifacts/contracts/registry/AbstractRNS.sol';
import 'rns-artifacts/contracts/resolver/AbstractResolver.sol';

contract MyResolver is AbstractResolver {
    AbstractRNS public rns;

    constructor(AbstractRNS _rns) public {
        rns = _rns;
    }

    function supportsInterface(bytes4) public pure returns (bool) {
        return false;
    }
}

To test your custom contracts in Truffle, import ours and deploy them through truffle-contract.

const assert = require('assert');
const truffleContract = require('truffle-contract');

const RNS = truffleContract(
  require('rns-artifacts/build/contracts/RNS.json')
);
RNS.setProvider(web3.currentProvider);

const MyResolver = artifacts.require('MyResolver');

contract('RNS', async accounts => {
  it('should create MyResolver', async () => {
    const rns = await RNS.new({ from: accounts[0] });
    const resolver = await MyResolver.new(rns.address);

    const rnsAddress = await resolver.rns();

    assert.equal(rnsAddress, rns.address);
  });
});

Related links

Package Sidebar

Install

npm i @rsksmart/rns-artifacts

Weekly Downloads

65

Version

1.1.0

License

MIT

Unpacked Size

3.71 MB

Total Files

44

Last publish

Collaborators

  • icalisalvo-iovlabs
  • ilanolkies
  • jessgusclark