|Leonardo Yvens||@leodasvacas||rustc (trait system), community work|
|Aleksey Kladov||@matklad||IDEs, Cargo, rustc|
|Grey Mitchell||@QuietMisdreavus||rustdoc, documentation|
|Igor Matuszewski||@Xanewok||RLS and other dev tools|
|Stjepan Glavina||@stjepang||crossbeam, all things Rust concurrency|
|Jorge Aparicio||@japaric||Rust on embedded devices|
|Chris Krycho||@chriskrycho||New Rustacean podcast|
|Matthias Endler||@mre||Hello Rust! live-coding show|
|Pierre Krieger||@tomaka||graphics APIs, audio APIs, Android packaging|
Rust and its ecosystem is developed by a diverse mix of staff (from a variety of companies) and volunteers, from all over the world and with a range of circumstances. And “developed” goes far beyond code, to include documentation, podcasts, community work, and more.
People and companies often ask how they can give back to the community and sponsor important work in the Rust world. I think the best approach is to provide direct “match-making” between sponsors and people doing valuable work, making it possible for sponsors to direct their funds and making the individuals more visible.
This page is a first attempt at facilitating sponsorship. This is not an officially endorsed list, but it is a list of Rustaceans that I have personally vetted and sponsored, and encourage you to support. Each of them has a long, public history of impactful work in the community.
Use the Patreon links to sponsor individuals, contact them directly for contract work, or write me at email@example.com to find another arrangement.
If you’re interested in being vetted for this list, please reach out.
rustca better fit for IDEs: there are big differences in how command line compiler and IDE should process code for the best user experience. Incremental on-demand compilation is a great step towards making
rustcmore suited for IDEs, but there are more things that should be done. In particular, I would like to lay a solid foundation for IDEs by starting from the lowest level – lexer and parser. The plan is outlined in the libsyntax2 RFC.
I want Rust to become a major player in the field of embedded systems as I believe it holds so much potential to improve the status quo. To that effect, I have been doing a bunch of groundwork in this area. Here’s some of my recent work:
svd2rust, a Rust code generator that produces an API to access a device’s peripherals from SVD files.
cortex-mfor access to common Cortex-M functionality, device crates like the
stm32f30x, Board Support Package (BSP) crates like the
fpafor fast Fixed Point Arithmetic.
#[used], MSP430 support, etc.
A show by @chriskrycho about learning @RustLang. Technical—but approachable! Topical deep dives, interviews, crate overviews, and more.
A live-coding show about Rust, targeted towards intermediate Rust programmers who have already read the Rust book and want to learn advanced patterns and tricks as well as how to write ergonomic code in Rust.
The winapi crate provides raw FFI bindings to all of Windows API. They are gathered by hand using the Windows 10 SDK from Microsoft
Vulkano (~45k lines of code) is a safe wrapper around the Vulkan API. It is a low-level brick that allows you to interact with your GPU and execute graphical or compute (GPGPU) operations. Vulkano aims to be very explicit and predictable especially if you are familiar with the Vulkan API, but at the same time provide some high-level functionnalities. Ideal for building a game, a game engine, or a GPGPU application when performances and explicitness matter.
Glium (~33k lines of code, unmaintained) is a safe wrapper around OpenGL and OpenGL ES. It aims to provide an easy-to-use high-level API while still remaining predictable and not hiding what it does. Even though many people have liked glium, its main goal of being safe was determined to be too difficult because of the many problems with OpenGL itself.
Android-rs-glue allows you to easily turn your Rust code into an Android package. After installing the Android SDK and NDK, run the
cargo apk command and you will get an .apk file which you can then install on your device. Works out of the box with vulkano, glium, winit and glutin. Also provides a docker image.
Winit (~10k lines of code) is a cross-platform window creation library. It allows you to create a basic window on Windows, Linux, MacOS and Android, then lets you handle the events received by this window. In order to show something on the window, you are supposed to create an OpenGL, Vulkan, or DirectX context on top of it, but this is not covered by winit itself.
Glutin (~7k lines of code) does the same as winit, but creates an OpenGL context in a cross-platform way on top of the window. The servo project from Mozilla uses a fork of glutin for its own windowing.
(more projects detailed in the Patreon page)