Need help with climake?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

137 Stars 2 Forks Other 160 Commits 1 Opened issues


The simplistic, dependency-free cli library ✨

Services available


Need anything else?

Contributors list


The simplistic, dependency-free cli library ✨

This branch represents the unpublished rewrite version of climake with many advantages compared to the original version which is no longer developed upon!

Example 📚

Demo of a simple package manager:

use climake::prelude::*;

fn main() { let package = Argument::new( "The package name", vec!['p', 'i'], vec!["pkg, package"], Input::Text, );

let add = Subcommand::new("add", vec![&package], vec![], "Adds a package");
let rem = Subcommand::new("rem", vec![&package], vec![], "Removes a package");

let cli = CliMake::new(
    vec![&add, &rem],
    "A simple package manager demo",

let parsed = cli.parse();

for subcommand in parsed.subcommands {
    if subcommand.inner == &add {
        println!("Adding package {:?}..", subcommand.arguments[0]);
    } else if subcommand.inner == &rem {
        println!("Removing package {:?}..", subcommand.arguments[0]);


Installation 🚀

Simply add the following to your

climake = "3.0.0-pre.1" # rewrite isn't out just yet!


This library is duel-licensed under both the MIT License (

) and Apache 2.0 License (
), you may choose at your discretion.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.