These festive days, I've been experimenting with a "pure" async-driven UI progress bar and spinner library for #rust called strides. There is the widespread indicatif crate but IMHO it does not mesh that well with async programs. Of course there are issues to resolve (I/O within poll() 😱), APIs to clean and features to complete but I call it good enough to base my binary installer on it.
https://github.com/matze/strides
https://github.com/matze/binge/commit/2c88a68ae166737c2ac60d4fe10da46681845210

