How do you choose what crate you will use?
My strategy:
- I aim for minimalistic libraries, which do not enforce their choices on me. For example, I do not want web framework to dictate me which templating I must use.
- I prefer small and tested stuff. I look at code coverage % and LOC.
- If there are several competing products, I pickup better documented one.
- If there is huge difference in dependency LOC - for example 5M vs 1M - I go with smaller one, overriding #3.
- I do not care if library I pick is popular or not.
- I really do not like kitchen-sink style libraries - attempting to do too much things at once, their documentation is often lacking and they need more understanding how are several their parts linked together. From my experience, I spend too much time dealing with framework itself and not writing my code.
- no-std is bonus. #webasm
- I avoid libraries without readme and without link to repository. Too much work with locating the repo and bookmarking.
- Badges in readme are plus \- quick overview (LOC, Coverage, download counts, ...)