Contracts from the main NuCypher codebase extracted into a separate repo for ease of testing and interoperability with other projects.
artifacts
: ABI and address of deployed contractscontracts
: Source code for contractsscripts
: Deployment scriptstests
: Contract tests
We use Brownie as the testing and deployment framework of this project.
To install pre-commit locally:
pre-commit install
In future, we may need to set the following:
ETHERSCAN_TOKEN
: Etherscan API token, required to query source files from Etherscan.GITHUB_TOKEN
: Github personal access token, required by py-solc-x when querying installable solc versions.WEB3_INFURA_PROJECT_ID
: Infura project ID, required for connecting to Infura hosted nodes.
This project uses tox to standardize the local and remote testing environments.
Note that tox
will install the dependencies from requirements.txt
automatically and run a linter (black
); if that is not desirable, you can just run py.test
.