We're really glad you're reading this, because we need volunteer developers to help this project come to fruition.
The following is a set of guidelines for contributing to shadow service, which are hosted in the Darwinia Network Organization on GitHub. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.
We have test cases for Rust and Golang, you can trigger the test cases of Rust using cargo test --all, for Golang is go test -v ./....
Here is a special cargo feature darwinia only for test usages, if you are contributing to the scale codec part of our rust code, you can run cargo test --all-features to trigger it.
Here are 3 branches in this project
v1: The is the stable branch which can be importing by other go projectsnext: This is the branch our prs will merge intogh-pages: This branch serves the API docs of shadow
Only tagging on the v1 branch, along with the updates of relay module of darwinia.
Start reading our code and you'll get the hang of it. We are using clippy (Rust), and golangci-lint (go) for our code style, you can check your code style by cargo clippy && golangci-lint run.
The commit messages of shadow follows the standard of Conventional Commits, please use a format like:
type(scope?): subject #scope is optional; multiple scopes are supported (current delimiter options: "/", "\" and ",")
Common types according to commitlint-config-conventional (based on the the Angular convention) can be:
[
'build',
'ci',
'chore',
'docs',
'feat',
'fix',
'perf',
'refactor',
'revert',
'style',
'test'
];
Thanks,
Darwinia Team