]> git.lizzy.rs Git - rust.git/blob - src/doc/index.md
Auto merge of #28396 - arielb1:misplaced-binding, r=eddyb
[rust.git] / src / doc / index.md
1 % Rust Documentation
2
3 Welcome to the Rust documentation! You can use the section headings above
4 to jump to any particular section.
5
6 # Getting Started
7
8 If you haven't seen Rust at all yet, the first thing you should read is the
9 introduction to [The Rust Programming Language](book/index.html). It'll give
10 you a good idea of what Rust is like.
11
12 The book provides a lengthy explanation of Rust, its syntax, and its
13 concepts. Upon completing the book, you'll be an intermediate Rust
14 developer, and will have a good grasp of the fundamental ideas behind
15 Rust.
16
17 [Rust By Example][rbe] was originally a community resource, but was then
18 donated to the Rust project. As the name implies, it teaches you Rust through a
19 series of small examples.
20
21 [rbe]: http://rustbyexample.com/
22
23 # Language Reference
24
25 Rust does not have an exact specification yet, but an effort to describe as much of
26 the language in as much detail as possible is in [the reference](reference.html).
27
28 # Standard Library Reference
29
30 We have [API documentation for the entire standard
31 library](std/index.html). There's a list of crates on the left with more
32 specific sections, or you can use the search bar at the top to search for
33 something if you know its name.
34
35 # Tools
36
37 [Cargo](https://crates.io) is the Rust's package manager providing access to libraries
38 beyond the standard one, and its website contains lots of good documentation.
39
40 [`rustdoc`](book/documentation.html) is the Rust's documentation generator, a tool converting
41 annotated source code into HTML docs.
42
43 A bunch of non-official tools are available, such as [Racer](https://github.com/phildawes/racer)
44 (code completion engine), or [rustfmt](https://github.com/nrc/rustfmt) (source code formatter),
45 or text editor plugins.
46
47 # Community & Getting Help
48
49 If you need help with something, or just want to talk about Rust with others,
50 there are a few places you can do that:
51
52 The Rust IRC channels on [irc.mozilla.org](irc://irc.mozilla.org/) are the
53 fastest way to get help.
54 [`#rust`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust) is
55 the general discussion channel, and you'll find people willing to help you with
56 any questions you may have.
57
58 There are also three specialty channels:
59 [`#rust-gamedev`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust-gamedev)
60 and
61 [`#rust-osdev`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust-osdev)
62 are for game development and operating system development, respectively.
63 There's also
64 [`#rust-internals`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust-internals), which is for discussion of the development of Rust itself.
65
66 You can also get help on [Stack
67 Overflow](https://stackoverflow.com/questions/tagged/rust). Searching for your
68 problem might reveal someone who has asked it before!
69
70 There is an active [subreddit](https://reddit.com/r/rust) with lots of
71 discussion and news about Rust.
72
73 There is also a [user forum](https://users.rust-lang.org), for all
74 user-oriented discussion, and a [developer
75 forum](https://internals.rust-lang.org/), where the development of Rust
76 itself is discussed.
77
78 # FAQs
79
80 There are questions that are asked quite often, so we've made FAQs for them:
81
82 * [Language Design FAQ](complement-design-faq.html)
83 * [Language FAQ](complement-lang-faq.html)
84 * [Project FAQ](complement-project-faq.html)
85 * [How to submit a bug report](https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports)
86
87 # The Error Index
88
89 If you encounter an error while compiling your code you may be able to look it
90 up in the [Rust Compiler Error Index](error-index.html).
91
92 # Community Translations
93
94 Several projects have been started to translate the documentation into other
95 languages:
96
97 - [Russian](https://github.com/kgv/rust_book_ru)
98 - [Korean](https://github.com/rust-kr/doc.rust-kr.org)
99 - [Chinese](https://github.com/KaiserY/rust-book-chinese)
100 - [Spanish](https://goyox86.github.io/elpr)