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
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.