Community-maintained guide to crates


#1

The categories listed on crates.io are a good means of classifying crates – if you know what you are looking for – but I got the idea of a Community Wiki as a guide to the landscape of everyday crates in the Rust ecosystem.

Do you think the need or benefit is there, and the liveliness of the community to maintain such a wiki?

The Community Wiki could be a place for sharing tips, code and cross-crate commentaries. Perhaps starting with the various Working Groups, crates central to their domains could be introduced and presented. For some domains, perhaps a process-oriented (what-do-you-want-to-do) exposition could be used.
Crates-io today has a list of categories but what I would like to see, I guess, is a more human touch to it. :hugs:
Other things that could be of interest on this wiki:

  • Directory of crates suitable for no-std/embedded
  • Security best-practices and recipes
  • FFI handbook
  • “Super groups”, or topics of crate categories.
  • Rust-by-example-style tips for the crates of the community, open for anyone to contribute to.

#2

Isn’t that basically what the cookbook and awesome list are?


#3

In part, but a wiki doesn’t require approved PRs for additions or changes to be published. I want a more inclusive form.

Perhaps it’s also still too much of a generated “list” and not enough of a living document with links and sections?

It would also be useful to integrate this information with crates.io as this is where crates are found. I think crates-io is the natural centrepoint of the community, where everybody goes, and the place where the biggest impact is possible. I might be wrong about that.


#4

I think the idea suggested in Crates.io squatting would be a nice approach, because it would not require much additional stuff outside of what people know: cargo and crates.io.


#5

I think curation outside of crates-io is a good idea.

On crates.rs I’ve already created three new categories that don’t exist on crates-io: Math, Machine Learning, and Cryptocurrencies. IMHO categories work well when they have 50-100 crates, so I’m happy to add more and especially split the existing large ones.

I am considering adding even smaller categories for specific tasks, e.g. error handling. There are a few sites “Are We * Yet” for web frameworks, machine learning. These are pretty cool IMHO.

The difficulties I see is in keeping them up to date long term. When I look at Awesome Rust list, I don’t know if there are still awesome, or something else has come since. These list tend to add stuff easily, but remove only when the crates obviously rot.


#6

Crates.rs looks very good! More categories and/or filters could reduce the list lengths to something manageable.

What to do about crate rot? Perhaps a default sorting algorithm could be useful within each category, taking various properties into account: recent downloads, does the crate build?, last update…

Another, somewhat related idea, I had was linking/adding a public comment section to crate pages, a bit like the User Contributed Notes on the PHP website. But perhaps that would be more of a docs.rs thing. I guess my main problem is that I feel that the information is too dispersed: crates-io/rs, docs.rs, cookbook, awesome list, wg pages… Maybe that’s just me feeling a bit lost. :smile:


#7

I think this is a very good idea. I made a similar suggestion in the Security WG proposal, regarding crates under the cryptography category. Though this more meant as a officially endorsed list, where listed crates had been reviewed, I think a community effort like this one could work in conjunction with the Security WG if they decide to implement my suggestion.

Or a community-wiki could be a starting point of something the Security WG could base their list off of, taking crates listed there and review further.