75 releases (21 breaking)

new 0.28.3 Mar 18, 2025
0.27.0 Mar 5, 2025
0.23.3 Dec 24, 2024
0.21.2 Nov 28, 2024
0.8.4 Mar 22, 2024

#711 in Command line utilities

Download history 639/week @ 2024-11-25 286/week @ 2024-12-02 85/week @ 2024-12-09 261/week @ 2024-12-16 497/week @ 2024-12-23 6/week @ 2024-12-30 997/week @ 2025-01-06 104/week @ 2025-01-13 341/week @ 2025-01-20 1136/week @ 2025-01-27 395/week @ 2025-02-03 89/week @ 2025-02-10 98/week @ 2025-02-17 33/week @ 2025-02-24 697/week @ 2025-03-03 177/week @ 2025-03-10

1,014 downloads per month

GPL-3.0-or-later

200KB
5K SLoC

Documentation-only module containing the help pages for the CLI tool.

The Args struct contains the top level options. The Action enum contains the top level subcommands. Beyond that, *Args structs contain options for that level, and *Action enums contain subcommands below that level. In structs, field names are generally transformed to options using by being kebab-cased.

For example, caddy::configure_tamanu::ConfigureTamanuArgs represents the subcommand:

$ bestool caddy configure-tamanu

and its fields:

pub struct ConfigureTamanuArgs {
    pub path: PathBuf,
    pub print: bool,
    pub domain: String,
    pub api_port: NonZeroU16,
    pub api_version: String,
    pub web_version: String,
    pub email: Option<String>,
    pub zerossl_api_key: Option<String>,
}

are transformed into these options:

--path
--print
--domain
--api-port
--api-version
--web-version
--email
--zerossl-api-key

Sometimes more information is contained in the #[clap()] attributes like defaults and positionals, and these can be seen by clicking the source link at the top right.

Dependencies

~15–74MB
~1M SLoC