]> git.lizzy.rs Git - rust.git/blob - src/doc/index.md
Rollup merge of #54281 - GuillaumeGomez:search-box, r=QuietMisdreavus
[rust.git] / src / doc / index.md
1 % Rust Documentation
2
3 <style>
4 nav {
5     display: none;
6 }
7 #search-input {
8     width: calc(100% - 58px);
9 }
10 #search-but {
11     cursor: pointer;
12 }
13 #search-but, #search-input {
14     padding: 4px;
15     border: 1px solid #ccc;
16     border-radius: 3px;
17     outline: none;
18     font-size: 0.7em;
19     background-color: #fff;
20 }
21 #search-but:hover, #search-input:focus {
22     border-color: #55a9ff;
23 }
24 </style>
25
26 Welcome to an overview of the documentation provided by the Rust project.
27 All of these projects are managed by the Docs Team; there are other
28 unofficial documentation resources as well!
29
30 Many of these resources take the form of "books"; we collectively call these
31 "The Rust Bookshelf." Some are large, some are small.
32
33 # Learn Rust
34
35 If you'd like to learn Rust, this is the spot for you! All of these resources
36 assume that you have programmed before, but not in any specific language:
37
38 ## The Rust Programming Language
39
40 Affectionately nicknamed "the book," [The Rust Programming
41 Language](book/index.html) will give you an overview of the language from
42 first principles. You'll build a few projects along the way, and by the end,
43 you'll have a solid grasp of the language.
44
45 ## Rust By Example
46
47 If reading multiple hundreds of pages about a language isn't your style, then
48 [Rust By Example](rust-by-example/index.html) has you covered. While the book talks about code with
49 a lot of words, RBE shows off a bunch of code, and keeps the talking to a
50 minimum. It also includes exercises!
51
52 # Use Rust
53
54 Once you've gotten familiar with the language, these resources can help you
55 when you're actually using it day-to-day.
56
57 ## The Standard Library
58
59 Rust's standard library has [extensive API documentation](std/index.html),
60 with explanations of how to use various things, as well as example code for
61 accomplishing various tasks.
62
63 <div>
64   <form action="std/index.html" method="get">
65     <input id="search-input" type="search" name="search"
66            placeholder="Search through the standard library"/>
67     <button id="search-but">Search</button>
68   </form>
69 </div>
70
71 ## The Rustc Book
72
73 [The Rustc Book](rustc/index.html) describes the Rust compiler, `rustc`.
74
75 ## The Cargo Book
76
77 [The Cargo Book](cargo/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
78
79 ## The Rustdoc Book
80
81 [The Rustdoc Book](rustdoc/index.html) describes our documentation tool, `rustdoc`.
82
83 ## Extended Error Listing
84
85 Many of Rust's errors come with error codes, and you can request extended
86 diagnostics from the compiler on those errors. You can also [read them
87 here](error-index.html), if you prefer to read them that way.
88
89 # Master Rust
90
91 Once you're quite familiar with the language, you may find these advanced
92 resources useful.
93
94 ## The Reference
95
96 [The Reference](reference/index.html) is not a formal spec, but is more detailed and
97 comprehensive than the book.
98
99 ## The Rustonomicon
100
101 [The Rustonomicon](nomicon/index.html) is your guidebook to the dark arts of unsafe
102 Rust. It's also sometimes called "the 'nomicon."
103
104 ## The Unstable Book
105
106 [The Unstable Book](unstable-book/index.html) has documentation for unstable features.