All Projects → mre → Idiomatic Rust

mre / Idiomatic Rust

🦀 A peer-reviewed collection of articles/talks/repos which teach concise, idiomatic Rust.

Projects that are alternatives of or similar to Idiomatic Rust

Awesome Resources
⚡️ Awesome coding resources for all stages and ages
Stars: ✭ 209 (-93.32%)
Mutual labels:  hacktoberfest
Eslint Plugin Ava
ESLint rules for AVA
Stars: ✭ 209 (-93.32%)
Mutual labels:  hacktoberfest
Bookmarks
🔖 +4.3K awesome resources for geeks and software crafters 🍺
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
Yii Demo
Yii 3 demo application
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
Add
Разработка с управляемым качеством на 1С
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
Json 2 Csv
Convert JSON to CSV *or* CSV to JSON!
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
C Sharp
All algorithms implemented in C#.
Stars: ✭ 3,310 (+5.75%)
Mutual labels:  hacktoberfest
Closedxml
ClosedXML is a .NET library for reading, manipulating and writing Excel 2007+ (.xlsx, .xlsm) files. It aims to provide an intuitive and user-friendly interface to dealing with the underlying OpenXML API.
Stars: ✭ 2,799 (-10.58%)
Mutual labels:  hacktoberfest
Seo
SEO utilities including a unique field type, sitemap & redirect manager
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
Tldr
Golang command line client for tldr https://github.com/tldr-pages/tldr
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
Sbuttons
💡 Simple buttons you can use easily for your next project.
Stars: ✭ 207 (-93.39%)
Mutual labels:  hacktoberfest
Teku
Java Implementation of the Ethereum 2.0 Beacon Chain
Stars: ✭ 209 (-93.32%)
Mutual labels:  hacktoberfest
Opensourceresources
Free opensource Learning Resources related to Web-Development A to Z 🔥❤
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
Compiler
Pawn compiler for SA-MP with bug fixes and new features - runs on Windows, Linux, macOS
Stars: ✭ 209 (-93.32%)
Mutual labels:  hacktoberfest
Ach
ACH implements a reader, writer, and validator for Automated Clearing House (ACH) files. The HTTP server is available in a Docker image and the Go package is available.
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest
Wget2
The successor of GNU Wget. Contributions preferred at https://gitlab.com/gnuwget/wget2. But accepted here as well 😍
Stars: ✭ 206 (-93.42%)
Mutual labels:  hacktoberfest
Frankenwm
🖼️ Fast dynamic tiling X11 window manager
Stars: ✭ 209 (-93.32%)
Mutual labels:  hacktoberfest
Oshi
Native Operating System and Hardware Information
Stars: ✭ 2,876 (-8.12%)
Mutual labels:  hacktoberfest
Dribbble2react
Transform Dribbble designs to React-Native code | Shop UI Kit >>
Stars: ✭ 2,443 (-21.95%)
Mutual labels:  hacktoberfest
Pixieditor
PixiEditor is a lightweight pixel art editor made with .NET 5
Stars: ✭ 210 (-93.29%)
Mutual labels:  hacktoberfest

Logo

Build Status - Check Links

This repository collects resources for writing clean, idiomatic Rust code. Please bring your own. 😊

Idiomatic coding means following the conventions of a given language. It is the most concise, convenient, and common way of accomplishing a task in that language, rather than forcing it to work in a way the author is familiar with from a different language. - Adapted from Tim Mansfield

Projects

  • Rust Anthology - The best short-form writing about Rust, collected.
  • cheat.rs - Idiomatic Rust tips - A list of quick tips to make your code more idiomatic.
  • clippy - A bunch of lints to catch common mistakes and improve your Rust code.
  • Patterns - A catalogue of design patterns in Rust.
  • Elements of Rust - A collection of software engineering techniques for effectively expressing intent with Rust.
  • Possible Rust - A blog for intermediate Rust programmers exploring real-world code and design patterns.
  • Rust API Guidelines - An extensive list of recommendations for idiomatic Rust APIs.
  • Rust by Example - A community driven collection of example code which follow Rust best practices.

🏋 Workshops

  • Build your own JIRA with Rust - A test-driven workshop to learn Rust building your own JIRA clone!
  • Ferrous Systems Teaching Material - Free workshop material produced by Ferrous Systems for trainings. The time for the full course is around three to four days.
  • PingCAP talent plan - A series of training courses about writing distributed systems in Rust. The courses primarily consist of projects where coding problems are presented, along with a partial implementation or API description, and a test suite.
  • Procedural Macros Workshop - This repo contains a selection of projects designed to learn to write Rust procedural macros — Rust code that generates Rust code.

📖 Books

📰 Articles

2021

2020

2019

  • Await a minute by David Tolnay - Example code for moving from raw futures to async/await syntax to improve error handling, native control flow, and borrowing.
  • Taking string arguments in Rust by @Xion - Discussing how to avoid subtle issues with string handling and when to use str (the string slice) and String (the owned/allocated string).
  • Rust Patterns: Enums Instead Of Booleans by Blake Smith - Discusses how using enums instead of booleans can be useful to express intent more clearly without sacrificing safety thanks to Rust's strong semantics (like exhaustive pattern matching).

2018

2017

2016

2015

🎤 Talks

2020

Macros for a More Productive Rust [Video] by @jam1garner - RustConf 2020

2019

Making Rust Delightful [Video] by @nrc - RustCon Asia 2019

2018

Idiomatic Rust - Writing Concise and Elegant Rust Code [Video] [Slides] by @mre - FOSDEM 2018

2017

Idiomatic Rust Libraries [Video] [Slides] by @killercup - Rustfest Kiev
What's so hard about writing a Slack Client in Rust? [Video] [Slides] by @mre - Rust Cologne Meetup

💬 Forum

2020

2017

📜 History

Coming from Python, I loved the guidelines on how idiomatic Python looks like. I was inspired by the likes of Peter Norvig, who wrote amazing articles on spellcheckers and sudoku solvers; and, of course, the Zen of Python. For Rust, there is no such thing as the Zen of Python, however, so I started collecting my own resources. The goal of this project is to create a peer-reviewed collection of articles/talks/repos, which teach idiomatic Rust style. It's a community project and you can contribute.

🔏 License

CC0

To the extent possible under law, Matthias Endler has waived all copyright and related or neighboring rights to this work. Logo adapted from FreePik.com.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].