| Crates.io | minargs |
| lib.rs | minargs |
| version | 0.1.0 |
| created_at | 2025-07-02 04:39:23.135358+00 |
| updated_at | 2025-07-02 04:39:23.135358+00 |
| description | π Ultra-lightweight, blazing-fast, zero-dependency CLI parser β inspired by Clap. |
| homepage | |
| repository | https://github.com/nehu3n/minargs |
| max_upload_size | |
| id | 1734476 |
| size | 10,733 |
π Minargs is a blazing-fast, ultra-lightweight argument parser for Rust β zero dependencies, zero bloat.
use minargs::App;
fn main() {
let matches = App::new("mytool")
.version("0.1.0")
.about("Ultra-light CLI parser demo")
.arg("input", |a| a.required(true).help("Path to input file"))
.arg("verbose", |a| a.short('v').long("verbose").takes_value(false))
.subcommand("init", |cmd| {
cmd.about("Initialize a project").arg("path", |a| a.help("Optional path"))
})
.parse();
match matches.subcommand() {
Some("init") => {
let sub = matches.sub_matches().unwrap();
println!("Init path: {:?}", sub.get("path"));
}
_ => {
println!("Input: {}", matches.get("input").unwrap());
if matches.has("verbose") {
println!("Verbose mode enabled.");
}
}
}
}
Add it to your Cargo.toml:
[dependencies]
minargs = "0.1.0"
Or install via Cargo:
cargo add minargs
Licensed under the MIT License.