Add [Mocktimism] specifications.
🎈 Thanks for your help improving the project! We are so happy to have you!
No contribution is too small and all contributions are valued.
Mocktimism is a WIP and thus there are plenty of ways to contribute, in particular we appreciate support in the following areas:
- Implementing issues. You can start off with those tagged "good first issue" which are meant as introductory issues for external contributors.
- Reporting issues. For security issues see Security policy.
Note that we have a Code of Conduct, please follow it in all your interactions with the project.
🚨 Before making any non-trivial change, please first respond to or open an issue describing the change to solicit feedback and guidance. This will increase the likelihood of the PR getting merged.
In general, the smaller the diff the easier it will be for us to review quickly.
In order to contribute, fork the appropriate branch, for non-breaking changes to production that is develop
.
Additionally, if you are writing a new feature, please ensure you add appropriate test cases.
We recommend using the Conventional Commits format on commit messages.
Unless your PR is ready for immediate review and merging, please mark it as 'draft' (or simply do not open a PR yet).
Bonus: Add comments to the diff under the "Files Changed" tab on the PR page to clarify any sections where you think we might have questions about the approach taken.
We aim to provide a meaningful response to all PRs and issues from external contributors within 2 business days.
You'll need the following:
Clone the repository and open it:
git clone [email protected]:ethereum-optimism/mocktimism.git
cd mocktimism
make test
make build
Or build with docker
make docker
Go tidy to clean up go dependencies
make tidy
Linter with autofix
make lint
User docs are in ./docs.
Foundry can be ran locally if you want to poke at foundry while using mocktimism. Docs
An example fixture running mocktimism in a javascript test exists in ./example