fadeevab/cliclack

Beautiful, minimal, opinionated CLI prompts inspired by the Clack NPM package

Rust

375

146 commits

updated Aug 10, 2026

See the code

README

CliClack Logo

Effortlessly build beautiful command-line apps with Rust πŸ¦€βœ¨

github.com crates.io docs.rs license

Beautiful, minimal, opinionated CLI prompts inspired by the @clack/prompts npm package.

cargo add cliclack

cliclack in action

cargo run --example basic
cargo run --example log
CliClack Example

πŸ’Ž Fancy minimal UI
βœ… Simple API
🎨 Theme support

Setup

The intro and outro/outro_cancel functions will print a message to begin and end a prompt session respectively.

use cliclack::{intro, outro};

intro("create-my-app")?;
// Do stuff
outro("You're all set!")?;

Input

The input prompt accepts a single line of text trying to parse it into a target type. Multiline input can be enabled using the multiline() switch, and autocomplete using autocomplete().

use cliclack::input;

let path: String = input("Where should we create your project?")
    .placeholder("./sparkling-solid")
    .validate(|input: &String| {
        if input.is_empty() {
            Err("Please enter a path.")
        } else if !input.starts_with("./") {
            Err("Please enter a relative path")
        } else {
            Ok(())
        }
    })
    .interact()?;

🎨 Theme

A custom theme can be applied for UI rendering. An example of theme customization:

cargo run --example theme
CliClack Magenta Theme

πŸš₯ Progress Bar

Starting from cliclack = "0.2.3", progress bars and multi-progress bars are supported.

CliClack Multi Progress Bar

πŸ” Autocomplete

Starting from cliclack = "0.5.0", the input prompt supports autocompletion.

CliClack Autocompletion

See more

fadeevab/cliclack

Beautiful, minimal, opinionated CLI prompts inspired by the Clack NPM package

Rust

375

146 commits

updated Aug 10, 2026

See the code

README

CliClack Logo

Effortlessly build beautiful command-line apps with Rust πŸ¦€βœ¨

github.com crates.io docs.rs license

Beautiful, minimal, opinionated CLI prompts inspired by the @clack/prompts npm package.

cargo add cliclack

cliclack in action

cargo run --example basic
cargo run --example log
CliClack Example

πŸ’Ž Fancy minimal UI
βœ… Simple API
🎨 Theme support

Setup

The intro and outro/outro_cancel functions will print a message to begin and end a prompt session respectively.

use cliclack::{intro, outro};

intro("create-my-app")?;
// Do stuff
outro("You're all set!")?;

Input

The input prompt accepts a single line of text trying to parse it into a target type. Multiline input can be enabled using the multiline() switch, and autocomplete using autocomplete().

use cliclack::input;

let path: String = input("Where should we create your project?")
    .placeholder("./sparkling-solid")
    .validate(|input: &String| {
        if input.is_empty() {
            Err("Please enter a path.")
        } else if !input.starts_with("./") {
            Err("Please enter a relative path")
        } else {
            Ok(())
        }
    })
    .interact()?;

🎨 Theme

A custom theme can be applied for UI rendering. An example of theme customization:

cargo run --example theme
CliClack Magenta Theme

πŸš₯ Progress Bar

Starting from cliclack = "0.2.3", progress bars and multi-progress bars are supported.

CliClack Multi Progress Bar

πŸ” Autocomplete

Starting from cliclack = "0.5.0", the input prompt supports autocompletion.

CliClack Autocompletion

See more

Project health

crates.io

Latest release

0.5.6 Β· Aug 10, 2026

Releases this year

12

Significant stargazers

Ryan Cao

141 followers Β· starred Jun 2024

Brennan Kinney

75 followers Β· starred Oct 2023

Himadri Bhattacharjee

64 followers Β· starred May 2024

Darren Schroeder

192 followers Β· starred May 2024