Write simple commandline applications in Rust with zero boilerplate. Bind Rust functions to CLI functions and options with macros. This crate uses clap.rs for the actual argument parsing.
// ... ignore the imports for now ...
struct MyApp;
/// Describe your application with style ✨
#[thunderclap]
impl MyApp {
/// Say hello to someone
fn hello(name: &str) {
println!("Hello {}", name);
}
}
fn main() {
MyApp::start();
}
This prints
USAGE:
MyApp [SUBCOMMAND]
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
SUBCOMMANDS:
hello Say hello to someone
help Prints this message or the help of the given subcommand(s)
Check the documentation for more examples.