Crate modcli

Crate modcli 

Source
Expand description

ModCLI — a lightweight, modular CLI framework for Rust.

§Quick Start

use modcli::ModCli;
let args: Vec<String> = std::env::args().skip(1).collect();
let mut cli = ModCli::new();
cli.run(args);

§Features

  • Custom commands via the Command trait
  • Styled output, gradients, progress, tables
  • Optional internal helper commands

Note: Runtime plugins and JSON/config loaders have been removed from core for security and performance. Configure your CLI directly in code.

Re-exports§

pub use crate::command::Command as CliCustom;

Modules§

args
Lightweight argument helper functions for common patterns.
command
commands
custom
error
input
loader
output
Output utilities for styled text, gradients, progress, and tables.
parser
shell
validate
Lightweight validation helpers for common CLI patterns.

Macros§

banner
Register a banner with custom code using a block. Example: banner!({ println!(“Hello”); })
banner_file
Register a banner from a file path (evaluated at runtime).
banner_text
Register a simple text banner that prints a single line and a newline.

Structs§

ModCli
Represents a CLI application and provides command registration and dispatch.

Functions§

modcli_version
Returns the version of the ModCLI framework (from modcli/Cargo.toml).
set_startup_banner
Registers a startup banner callback that will be invoked once, the first time ModCli::run() is called in this process. If the environment variable MODCLI_DISABLE_BANNER is set to “1” or “true” (case-insensitive), the banner will be suppressed.
set_startup_banner_from_file
Registers a startup banner from a UTF-8 text file. The contents are read immediately and stored; at runtime the stored text is printed when the banner runs. Returns Err if the file cannot be read.