https://github.com/mathisburger/rusty-cli
A rust library build for developing fast and scalable CLIs
https://github.com/mathisburger/rusty-cli
cli rust rust-crate rust-lang rust-library rustlang terminal
Last synced: 4 months ago
JSON representation
A rust library build for developing fast and scalable CLIs
- Host: GitHub
- URL: https://github.com/mathisburger/rusty-cli
- Owner: MathisBurger
- License: mit
- Created: 2022-07-15T21:19:14.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2022-07-15T21:48:45.000Z (almost 4 years ago)
- Last Synced: 2025-02-28T05:00:00.521Z (over 1 year ago)
- Topics: cli, rust, rust-crate, rust-lang, rust-library, rustlang, terminal
- Language: Rust
- Homepage: https://crates.io/crates/rusty-cli
- Size: 37.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
rusty-cli
Build fast and scalable command line applications with rust!
# Project information
Rusty-cli is a rust library written for making the process of developing command line interfaces. It provides a ton of
useful abstractions for existing libraries. For example does the rusty-cli ecosystem provide wrapped implementations for
the dialoguer library. But rusty-cli also has some great features
like the FileReader or the integrated command handler.
# Usage
Just paste the dependency into your `Cargo.toml`
```toml
rusty-cli = "0.1.0"
```
# Getting started
Do you want to create your first project with rusty-cli?
Try this example for testing your installation.
```rust
let pong_command = Command::new(
"Pong".to_string(),
"Pong command".to_string(),
"usage".to_string(),
executor,
"ping".to_string()
);
let mut runner = Runner::new();
runner.enable_command_handler(CommandHandlerArguments {
commands: vec![pong_command],
default_no_argument_callback: None,
flags: vec![]
});
runner.run();
```
# Documentation
1. Introduction
2. Command handler
3. FileReader
4. Inputs
# Contribute
This repository is maintained actively. If you have got a new feature request or you found a bug, feel free
to open a new issue or just create your own implementation to fix your problem and create a pull request to this
repository. I am always open for new contributions from every origin. Feel free to help this project to gain more
users and features.