JSPM

soy-contracts

0.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 6
  • Score
    100M100P100Q41122F
  • License Apache-2.0

ENS resolvers for soy

Package Exports

  • soy-contracts
  • soy-contracts/build/contracts/ENSRegistry.json
  • soy-contracts/build/contracts/SoyPublicResolver.json

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (soy-contracts) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme



Contracts

ENS+IPFS ❤ DevOps - Static Websites on the Distributed Web

SetupAPILicense

Soy Contracts is the source code for Soy's public ENS resolver and a low level JS interface to the contracts.


Usage

Install

# Yarn
$ yarn add soy-contracts

# npm
$ npm install --save soy-contracts

API

soy-contracts exports two smart contracts wrapped by truffle-contract. If you're familiar with the Truffle console, then the api should feel natural.

The two contract's are named exports and are:

  • ENS: The main ENS registry contract, source.
  • SoyPublicResolver: Soy's public resolver implementation, source

For more details about API for each contract, refer to Truffle's documentation and the source above.

Examples

Deploying and Configuring Test Contracts

const { SoyPublicResolver, ENS } = require('soy-contracts');

const rootNode = web3.utils.asciiToHex(0);
const provider = web3.currentProvider;
const accounts = await web3.eth.getAccounts();
const txOps = { from: accounts[0] };

ENS.setProvider(provider);
ENS.defaults(txOps);
SoyPublicResolver.setProvider(provider);
SoyPublicResolver.defaults(txOps);

const registryContract = await ENS.new(txOps);
const resolverContract = await SoyPublicResolver.new(
  registryContract.address,
  txOps
);

await registryContract.setSubnodeOwner(
  rootNode,
  web3.utils.sha3(tld),
  txOps.from,
  txOps
);

Contributing

Please read through our contributing guidelines. Included are directions for coding standards, and notes on development.

License

Apache 2.0