The Rust Community
The Rust programming language has many qualities, but Rust’s greatest strength is the community of people who come together to make working in Rust a rewarding experience.
We are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, disability, ethnicity, religion, or similar personal characteristic. Our code of conduct sets the standards for behavior in all official Rust forums.
If you feel you have been or are being harassed or made uncomfortable by a community member, please contact any of the Rust Moderation Team immediately. Whether you are a regular contributor or a newcomer, we care about making the community a safe space for you.
The most important community resources for those new to Rust are:
- #rust-beginners, an IRC channel that loves answering questions at any depth.
- The Users Forum, for discussion of all things Rust.
You may also find help on the question and answer site, Stack Overflow.
This Week in Rust collects the latest news, upcoming events and a week-by-week account of changes in the Rust language and libraries. The Rust Blog is where the Rust team makes announcements about major developments. And nearly everything happening in Rust is discussed on the unofficial subreddit, /r/rust.
Rustaceans maintain a number of friendly, high-traffic IRC channels on Mozilla’s IRC network, irc.mozilla.org.
The #rust channel is a venue for general discussion about Rust, and a good place to ask for help. You’ll find people willing to answer any questions about Rust, and responses are typically fast.
Rust’s developers coordinate in #rust-internals. It is for real-time discussion about hacking on Rust itself. It is also the channel to ask questions about contributing to Rust.
- #rust is for all things Rust
- #rust-beginners is a space for those new to Rust, lower traffic than #rust
- #rust-internals is for discussion of other Rust implementation topics
- #rustc is the home of the compiler team
- #rust-libs is the home of the libraries team
- #rust-tools is the home of the [tools and infrastructure team][tool_team]
- #rust-lang is the home of the language team
- #rust-community is the home of the community team
- #rust-br é dedicado à discussão sobre Rust no Brasil
- #rust-de ist für die allgemeine Diskussion über Rust auf Deutsch
- #rust-es es para una discusión general sobre Rust en español
- #rust-fr est dédié à la programmation en Rust en français
- #rust-ru для общих дискуссий о Rust на русском языке
- Rust中文 Rust 语言中文 Chat 社区(非IRC频道)
- #cargo is for discussion of Cargo, Rust’s package manager
- #rust-bots notifications about Rust from a selection of bots
- #rust-docs is the home of the unoffical documentation team
- #rust-crypto is for discussion of cryptography in Rust
- #rust-embedded is for people doing embedded software in Rust
- #rust-gamedev is for people doing game development in Rust
- #rust-networking is for people doing computer networking and development in Rust
- #rust-offtopic is for general chit-chat amongst Rustaceans
- #rust-osdev is for people doing OS development in Rust
- #rust-webdev is for people doing web development in Rust
- #servo is for discussion of Servo, the browser engine written in Rust
We have two forums for asynchronous discussion:
The Users Forum, a space for asking questions, posting code snippets, talking about Rust projects, and so on.
The Internals Forum, a space dedicated to design and implementation discussion about Rust itself (which includes Cargo, the standard library, and other core bits of infrastructure).
Rust has a YouTube channel where presentations given at user groups and conferences by members of the Rust community are uploaded.
User Groups and Meetups
There are more than 90 Rust User Groups worldwide in over 35 countries. Rustaceans meet periodically in Rust User Groups. Its a great introduction to the community and a great way to learn and socialize with other people with a similar interest. Meetings are usually held monthly and very informal. Meetings are open to everyone.
The Rust Team
Rust has a community-driven development process where most decisions are made through open discussion and consensus, under the stewardship of various teams:
The Core Team is responsible for steering the design and development process, overseeing the introduction of new features, and ultimately making decisions for which there is no consensus (this happens rarely).
The Language Team is responsible for the design of new language features.
The Library Team is responsible for the Rust standard library, rust-lang crates, and conventions.
The Compiler Team is responsible for compiler internals and optimizations.
The Dev tools team is responsible for setting the overall direction of tools for working with Rust code.
The Cargo team is responsible for the design and implementation of Cargo.
The Infrastructure Team is responsible for infrastructure that supports the project itself: CI, release generation, bots, and metrics.
The Community Team is responsible for coordinating events, outreach, commercial users, teaching materials, and exposure. They can also direct inquiries to the correct parties when its not clear who to contact about something Rusty.
The Documentation Team is responsible for ensuring Rust has fantastic documentation.
In addition to the official team rosters, most teams also have a larger set of reviewers who are knowledgeable about the area and can sign off on code. If you’re interested in getting involved in one of these teams, feel free to reach out to the team leader or any other member, who can help get you started.
As mentioned above, the Rust Internals Forum is dedicated to discussing the design and implementation of Rust. A lot of discussion also happens on GitHub:
The RFC repo tracks our Request for Comment process, the main pathway through which the Rust community and the teams reach consensus on new features proposed for the language and official libraries and tools.
Roughly weekly, the Rust teams produce team reports tracking team business, including the progression of proposals through the RFC and implementation process.