You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The [rust-embedded-community](https://github.com/rust-embedded-community) Github organization is simply a place for [Rust language](https://www.rust-lang.org) crates in need of a good home.
The [rust-embedded-community][REC] Github organization serves two purposes: increasing the bus factor of hosted crates and provide a place for centralized maturation of experimental crates which are meant to be widely used.
6
+
7
+
For the official working group dedicated to [Rust] on embedded devices, please refer to the [Rust Embedded Working Group][REWG].
8
+
9
+
## Detailed mission
10
+
11
+
### Home for projects in need of further maintenance
12
+
13
+
There are libraries that were once developed but the original author does not have the time necessary for further development or has moved on to other projects.
14
+
15
+
The REC provides a place for those of these libraries which are accepted to live on, offering the opportunity for development to be easily aided by or taken over by a group of interested people, also to increase the "bus factor".
16
+
17
+
### Centralized maturation of experimental crates
18
+
19
+
The REC provides a place for crates to mature in a centralized way. That means a centralized organization where several people can collaborate in projects that are (still) too experimental but are meant to be widely-used.
20
+
21
+
The shared ownership provided by this organization ensures that widely-used crates do not become unmaintained.
22
+
23
+
### Relation to the Rust Embedded Working Group organization
24
+
25
+
The [Rust Embedded Working Group][REWG] is an official working group of the [Rust programming language][rust]. This organization is not. This organization should be seen as separate and "non-blessed".
26
+
27
+
Sometimes, crates from this organization may be migrated to the [REWG] or integrated into [REWG] crates. However, that remains a process regulated by the [REWG] itself.
28
+
29
+
## The original idea
6
30
7
31
Several members of the Rust Embedded Working Group got together at Oxidize 2019 and wondered, what can we do with these half-finished projects we've started but never quite find the time to finish? Rather than invite each other to all our repositories, we wondered if there could be a place where unloved crates could move in and get some of the care and attention they deserve. And so, the rust-embedded-community was born.
8
32
@@ -14,29 +38,25 @@ We need maintainers! If you're interested in updating some of the projects we ca
14
38
15
39
We haven't really worked out any rules as to what we will and won't look after, but at the moment it's fair to say a project needs to be:
16
40
17
-
* Written in the Rust Programming Language
41
+
* Written in the [Rust Programming Language][rust]
18
42
* Target resource constrained devices (be they small Linux devices, RTOS based or bare-metal)
19
43
* Useful to the wider Rust Embedded community (or at least, not just the author)
20
-
*Licenced under an Open Source licence
44
+
*Licensed under an [OSI]-approved open-source license.
21
45
22
46
If you'd use to fork a project, open an issue and tell us about it.
23
47
24
48
## Crates.io
25
49
26
50
We're happy to be added as Owners on crates.io for projects we host. We can then help co-ordinate pushing out updates when something elsewhere in the ecosystem causes breakage. Open an issue if you want to discuss this - we might need to set up a group email account or something to avoid maintaining lots of copies of maintainer list.
27
51
28
-
## Projects
29
-
30
-
We currently look after:
31
-
32
-
* console-traits - a crate for handling text-based consoles on `no_std` embedded systems. If you implement this trait on the serial port in your project, you'll get rudimentary ANSI support for any text you print to the screen. Originally by [@thejpster](https://github.com/thejpster).
33
-
34
-
* cortex-m-scheduling - a crate for starting up multiple threads on a bare-metal Cortex-M3+ based system. Originally by [@samp20](https://github.com/samp20).
35
-
36
52
## Maintainers
37
53
38
54
* Jonathan 'theJPster' Pallant - [Github](https://github.com/thejpster) | [Twitter](https://twitter.com/therealjpster) | [Keybase](https://keybase.io/thejpster)
39
55
* James Munns - [Github](https://github.com/jamesmunns)
Logos and other assets of the Rust Embedded Community are licensed under the [Creative Commons Attribution License (CC-BY)](https://creativecommons.org/licenses/by/4.0/).
4
+
5
+
## Attribution
6
+
7
+
### Logo
8
+
9
+
The Rust Embedded Community Logo was designed by [Diego Barrios Romero]. It is based on the [Rust Embedded Working Group][rewg] Logo, which was designed by [Erin Power] but omitting the Rust language logo. These designs include all files matching `assets/logo/rec-logo*`.
0 commit comments