Thank you for considering making contributions to Fourth State's Plasma MVP implementation! We welcome contributions from anyone! See the open issues for things we need help with!
Contribute to design discussions and conversation by joining our Discord Server.
Fork, then clone the repo:
If you have ssh keys:
git clone [email protected]:your-username/plasma-mvp-rootchain
Otherwise:
git clone https://github.com/your-username/plasma-mvp-rootchain
Install dependencies with:
npm install
Note: requires Solidity 0.4.24 and Truffle 4.1.14
Make sure the tests pass:
- Start ganache-cli:
ganache-cli -m=plasma_mvp
- Run tests:
truffle test
Create a branch that is named off the feature you are trying to implement. See these guidelines
Make your changes. Add tests and comment those changes.
If your tests pass, push to your fork and submit a pull request to the master branch.
If you would like to propose a protocol change, open up an issue. If the reviewers decide the proposed change is in line with the project's aim, then a writeup should also be added to the research repository. It is also advisable to publish the proposed change to Eth Research, so other plasma implementations can benefit from the proposed change.