brson / brson/stdx

thoghts on stdcli crate built on top of this?

Open
#63 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
2.1k
Forks
48
PR merge metrics
No merged PRs in 30d

Description

I left a comment [on reddit](https://www.reddit.com/r/rust/comments/6x82mw/5_tips_for_writing_small_cli_tools_in_rust/dmege2n/?utm_content=permalink&utm_medium=front&utm_source=reddit&utm_name=rust) but wanted your feedback.

I've been thinking about ways we can make cli development *even easier* and I think having a `stdcli` crate that does `use stdx::*` but also includes more libraries for writing cli's would be AMAZING. This would be built on top of `stdx` but have libraries specific for developing scripts and cli's.

Some other libraries that would be useful that stdx doesn't (and shouldn't) have:

- [cargo-script](https://crates.io/crates/cargo-script): this wouldnt be in `stdcli`, but is an important one to know! Quickly write and run cli scripts with crate caching.
- [structopt_derive](https://crates.io/crates/structopt_derive): simpler and more intuititive than clap, uses clap underneath.
- [tabwriter](https://crates.io/crates/tabwriter) easy formatting of data into a table using `\t` character for alignment
- [self_update](https://crates.io/crates/self_update): auto update/upgrade the compiled binary
- [ansi_term](https://crates.io/crates/ansi_term): colors in the terminal
- [fern](https://crates.io/crates/fern): easier logging for clis
- [fs_extra](https://crates.io/crates/fs_extra): to remove some of your tiny functions
- [ctrlc](https://crates.io/crates/ctrlc): easy handling of unix AND windows signals

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.