layout | title |
---|---|
default |
Contributing to Rust — documentation · The Rust Programming Language |
Documentation is never good enough and there's never enough of it. Many aspects of Rust's documentation don't require deep knowledge to improve, and writing, reviewing, and editing documentation are great ways to learn Rust. Furthermore, improvements to documentation are easy to identify and limitless. Don't like the way something reads? Discover some information that wasn't documented? Your pull request will be gleefully embraced.
The most impactful documentation you can write is for the crates that make up the Rust ecosystem. While the in-tree documentation is relatively complete, the same is not yet true for many of the popular crates and tools that Rust programmers interact with every day. Contributing API documentation to a popular Rust project will earn you the enduring love of its maintainer.
The Book is the primary documentation for Rust, maintained in the
main repository. It has its own issue label, A-book and
is continually being refined. Other documentation in the main
repository include The Rust Reference, the standard library API
documentation, The Rustonomicon (a guide to using unsafe
correctly). The Rust Style Guidelines are so incomplete they are not
linked prominently; an ambitious contributor can make much headway
there. The error index provides extended explanations of the
errors produced by the compiler. As new errors are added this
documentation must be maintained, so there always
errors not reflected in the index to be added. Most in-tree
documentation lives in the src/doc directory. To contribute simply
edit it and submit a pull request. These are all covered by the
A-docs label on the issue tracker.
A great deal of important Rust documentation does not live in the main repository, or is not maintained by the project, but is still critically important to Rust's success. Examples of excellent Rust documentation that is actively developed and in need of contributors include Rust By Example, Rust Design Patterns, and rust-rosetta. For other existing documentation projects to contribute to see rust-learning.
Meet other Rust documentarians in #rust-docs.