| Crates.io | ff-cli |
| lib.rs | ff-cli |
| version | 0.1.0 |
| created_at | 2026-01-04 07:54:43.672517+00 |
| updated_at | 2026-01-04 07:54:43.672517+00 |
| description | A pluggable command-line framework for extensible CLI applications |
| homepage | |
| repository | https://github.com/seekstorm/ff-cli |
| max_upload_size | |
| id | 2021534 |
| size | 39,442 |
A pluggable command-line framework for building extensible CLI applications in Rust.
cargo install ff-cli
ff-cli help
ff-cli version
Create plugins as separate crates that implement the Command trait:
use ff_cli::plugin::Command;
use anyhow::Result;
pub struct MyCommand;
impl Command for MyCommand {
fn name(&self) -> &str {
"mycommand"
}
fn description(&self) -> &str {
"My custom command"
}
fn execute(&self, args: &[String]) -> Result<()> {
println!("Executing with args: {:?}", args);
Ok(())
}
}
Then add the plugin as a dependency and register it in main.
Enable the dynamic-plugins feature to load plugins at runtime from shared libraries.
.so/.dylib/.dll at runtimedynamic-plugins featuregit subcommandsStart with compile-time plugins for the initial release:
MIT OR Apache-2.0