@namespace-domains/contracts

Smart contracts for the Namespace protocol

Usage no npm install needed!

<script type="module">
  import namespaceDomainsContracts from 'https://cdn.skypack.dev/@namespace-domains/contracts';
</script>

README

Namespace - Smart Contracts

ci npm

This repository contains the smart contracts that are used to create and manage Namespace domains and their associated records.

Install

Install Node and then run the following commands:

yarn install

Install Python and then run the following commands:

pip install -r configurations/requirements.txt

Usage

Format and run all linters:

yarn lint

Compile solidity contracts:

yarn build

Run unit tests:

yarn test:unit

In order to deploy the contracts and run integration tests you will need to setup the following environment variables:

  • INFURA_PROJECT_ID: Register an Infura account and create a new project.
  • ETHEREUM_PRIVATE_KEY: Private key of a wallet with sufficient funds to cover any transaction fees.
  • ETHERSCAN_API_KEY: Register an Etherscan account and create a new API KEY.

Deploy contracts:

yarn deploy --network <name>

Run integration tests:

yarn test:integration --network <name>

Security

WIP

Documentation

WIP