Contributing to Sui
This page describes how to add to Sui. If you merely need to get the Sui binaries, follow Install Sui.
This site is available in two versions in the menu at top left: the default and stable Devnet branch and the Latest build upstream
main branch. Use the
devnet version for app development on top of Sui. Use the Latest build
main branch for contributing to the Sui blockchain as described on this page. Always check and submit fixes to the
Find answers to common questions in our FAQ. Read other sub-pages in this section for ways to contribute to Sui.
See our roadmap
Sui is evolving quickly. See our roadmap for the overall status of Sui, including timelines for launching Devnet, Testnet, and Mainnet.
Join the community
To connect with the Sui community, join our Discord.
Send ideas to: firstname.lastname@example.org
Or report them in the #docs channel of Discord.
And file documentation fixes or requests for improvement at: https://github.com/MystenLabs/sui/issues/new/choose
Select the Sui Doc Bug template, adjust fields, and describe the issue.
You may also make changes to the docs directly in GitHub right here using the Source Code link below. Make sure you are in the
main rather than
devnet branch by being on the Latest build upstream view as described at the top of this page.
Simply edit the file in question and generate a pull request. You may even use our Sui doc templates to create overviews and procedures (uses).
Then send your work our way. We will get back to you shortly.
In order to obtain the Sui source code, follow the steps to download (
git clone) the
at Install Sui.
And see the Rust Crates in use at:
- https://mystenlabs.github.io/sui/ - the Sui blockchain
- https://mystenlabs.github.io/narwhal/ - the Narwhal and Bullshark consensus engine
- https://mystenlabs.github.io/mysten-infra/ - Mysten Labs infrastructure
Send pull requests
Start by creating your own fork of the repo:
$ gh repo fork https://github.com/mystenlabs/sui.git # or alternatively, clone your fork cargo install --path sui/sui # put Sui CLI's in your PATH cd sui cargo build --all --all-targets # check that build works cargo test # check that tests pass
To submit your pull request:
- Make your changes in a descriptively named branch.
- If you have added code that should be tested, add unit tests.
- Ensure your code builds and passes the tests:
- Make sure your code passes the linters and autoformatter:
cargo clippy --all --all-targets && cargo fmt --all
- If you have made changes to APIs, update the relevant documentation, and build and test the developer site.
git push -f origin <branch_name>, then open a pull request from the Sui GitHub site.