Brownie is a python framework for deploying, testing and interacting with ethereum smart contracts.
- ganache-cli
- git
- pip
- python3 version 3.6 or greater, python3-dev, python3-venv
There is an issue in ganache-cli 6.3.0 relating to
evm_revert
that may cause tests to unexpectedly fail. At present, it is recommended to use version 6.2.5.
As brownie relies on py-solc-x, you do not need solc installed locally but you must install all required solc dependencies.
You may also wish to install opview for test coverage visualization.
curl https://raw.githubusercontent.com/HyperLink-Technology/brownie/master/brownie-install.sh | sh
To build the image:
docker build https://github.com/HyperLink-Technology/brownie.git -t brownie:1
You can then run brownie with:
docker run -v $PWD:/usr/src brownie brownie
To set up the default folder and file structure for brownie use:
brownie init
From there, type brownie
for basic usage information.
Brownie documentation is hosted at Read the Docs.
This project is still in development and should be considered a beta. Questions, comments, criticisms and pull requests are welcomed.
Help is always appreciated! In particular, Brownie needs work in the following areas before we can comfortably take it out of beta:
- Tests
- Code formatting
- Improving the documentation
- Support for Windows
- More tests
This project is licensed under the MIT license.