Expand description


A simple way to create simple yet easy to use command line experiences. uQuery allows you both to query the user for data, and display user errors and warnings


use std::io;

fn main() -> io::Result<()> {
    let name = uquery::string("What is your name?")?;
    println!("Hello {}.", name);

    let day = uquery::string_with_default(
        "What is your favourite day?",
    println!(r#"I see your favourite day is "{}"."#, day);

    let number: usize = uquery::parsable_with_default("Whats your favourite number?", 7)?;
    println!("Hello {} lover", number);

    let age: u8 = uquery::parsable("How old are you?")?;
    println!("Hello {} year old.", age);

    let happy = uquery::boolean("Are you happy?", None)?;
    println!("It is {} that you are happy.", happy);



Queries the user for boolean input, with an optional default.

Displays an error to the user.

Queries the user for input of any time that implements FromStr.

Queries the user for input of any time that implements FromStr and Display

Queries the user for string input.

Queries the user for string input with a default.

Displays a warning to the user.

Type Definitions

A type representing the error for a query.