Skip to content

Commit 77b570f

Browse files
committed
Re-write the documentation index
The docs team has decided that we're framing resources in three ways: "learning Rust," "using Rust," "mastering Rust." This is a more useful split than "beginner/intermediate/advanced." As we add more resources in the future, we expect "using Rust" to grow. "the bookshelf" as a concept is great, but isn't really organized along these lines. As such, this reorganizes the docs along these lines.
1 parent b12af86 commit 77b570f

File tree

1 file changed

+63
-46
lines changed

1 file changed

+63
-46
lines changed

src/doc/index.md

+63-46
Original file line numberDiff line numberDiff line change
@@ -6,55 +6,72 @@ nav {
66
}
77
</style>
88

9-
This page is an overview of the documentation included with your Rust install.
10-
Other unofficial documentation may exist elsewhere; for example, the [Rust
11-
Learning] project collects documentation from the community, and [Docs.rs]
12-
builds documentation for individual Rust packages.
9+
Welcome to an overview of the documentation provided by the Rust project.
10+
All of these projects are managed by the Docs Team; there are other
11+
unofficial documentation resources as well!
1312

14-
# API Documentation
13+
Many of these resources take the form of "books"; we collectively call these
14+
"The Rust Bookshelf." Some are large, some are small.
1515

16-
Rust provides a standard library with a number of features; [we host its
17-
documentation here][api].
16+
## Learn Rust
1817

19-
# Extended Error Documentation
18+
If you'd like to learn Rust, this is the spot for you! All of these resources
19+
assume that you have programmed before, but not in any specific language:
20+
21+
### The Rust Programming Language
22+
23+
Affectionately nicknamed "the book," [The Rust Programming
24+
Language](book/index.html) will give you an overview of the language from
25+
first principles. You'll build a few projects along the way, and by the end,
26+
you'll have a solid grasp of the language.
27+
28+
### Rust By Example
29+
30+
If reading multiple hundreds of pages about a language isn't your style, then
31+
[Rust By Example](rust-by-example/index.html) has you covered. While the book talks about code with
32+
a lot of words, RBE shows off a bunch of code, and keeps the talking to a
33+
minimum. It also includes exercises!
34+
35+
## Use Rust
36+
37+
Once you've gotten familliar with the language, these resources can help you
38+
when you're actually using it day-to-day.
39+
40+
### The Standard Library
41+
42+
Rust's standard library has [extensive API documentation](std/index.html),
43+
with explanations of how to use various things, as well as example code for
44+
accomplishing various tasks.
45+
46+
### The Cargo Book
47+
48+
[The Cargo Book](cargo/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
49+
50+
### The Rustdoc Book
51+
52+
[The Rustdoc Book](rustdoc/index.html) describes our documentation tool, `rustdoc`.
53+
54+
### Extended Error Listing
2055

2156
Many of Rust's errors come with error codes, and you can request extended
22-
diagnostics from the compiler on those errors. We also [have the text of those
23-
extended errors on the web][err], if you prefer to read them that way.
24-
25-
# The Rust Bookshelf
26-
27-
Rust provides a number of book-length sets of documentation, collectively
28-
nicknamed 'The Rust Bookshelf.'
29-
30-
* [The Rust Programming Language][book] teaches you how to program in Rust.
31-
* [Rust By Example][rbe] teaches you how to program in Rust using editable examples.
32-
* [The Cargo Book][cargo-book] is a guide to Cargo, Rust's build tool and dependency manager.
33-
* [The Unstable Book][unstable-book] has documentation for unstable features.
34-
* [The Rustonomicon][nomicon] is your guidebook to the dark arts of unsafe Rust.
35-
* [The Reference][ref] is not a formal spec, but is more detailed and comprehensive than the book.
36-
* [The Rustdoc Book][rustdoc-book] describes our documentation tool, `rustdoc`.
37-
38-
Initially, documentation lands in the Unstable Book, and then, as part of the
39-
stabilization process, is moved into the Book, Nomicon, or Reference.
40-
41-
Another few words about the reference: it is guaranteed to be accurate, but not
42-
complete. We have a policy that features must have documentation to be stabilized,
43-
but we did not always have this policy, and so there are some stable things that
44-
are not yet in the reference. We're working on back-filling things that landed
45-
before this policy was put into place. That work is being tracked
46-
[here][refchecklist].
47-
48-
[Rust Learning]: https://github.com/ctjhoa/rust-learning
49-
[Docs.rs]: https://docs.rs/
50-
[api]: std/index.html
51-
[ref]: reference/index.html
52-
[refchecklist]: https://github.com/rust-lang-nursery/reference/issues/9
53-
[err]: error-index.html
54-
[book]: book/index.html
55-
[rbe]: rust-by-example/index.html
56-
[nomicon]: nomicon/index.html
57-
[unstable-book]: unstable-book/index.html
58-
[rustdoc-book]: rustdoc/index.html
59-
[cargo-book]: cargo/index.html
57+
diagnostics from the compiler on those errors. You can also [read them
58+
here](error-index.html), if you prefer to read them that way.
59+
60+
## Master Rust
61+
62+
Once you're quite familiar with the language, you may find these advanced
63+
resources useful.
64+
65+
### The Reference
66+
67+
[The Reference](reference/index.html) is not a formal spec, but is more detailed and
68+
comprehensive than the book.
69+
70+
### The Rustonomicon
71+
72+
[The Rustonomicon](nomicon/index.html) is your guidebook to the dark arts of unsafe
73+
Rust. It's also sometimes called "the 'nomicon."
74+
75+
### The Unstable Book
6076

77+
[The Unstable Book](unstable-book/index.html) has documentation for unstable features.

0 commit comments

Comments
 (0)