A library to take user input in a console with exception handling and fluent syntax
$ dotnet add package Rephidock.ConsolePromptsA .NET library to take user input in a console with exception handling and fluent syntax.
IParsable, including numbers, and booleansUse the Prompt class to create a query with one of the For methods, add restrictions to the query with fluent syntax and Display the query to the user.
int userAge = Prompt.For<int>("Your age").NoLessThan(1).Display();
const int drinkingAge = 21;
if (userAge >= drinkingAge)
{
Console.WriteLine("You are of drinking age!");
}
else
{
Console.WriteLine("Sorry, you can't have a drink.");
}

Use the Prompter class to customize how prompts and hints are displayed.
Prompter prompter = new Prompter(autoSetupHints: false);
// Set up all hints to be displayed
prompter.SetHintHandlers(PromptHintHandlers.GetAllHandlers());
// Change format of prompts
prompter.PromptFormat = "[{1}] {0} := ";
prompter.HintSeparator = " & ";
prompter.InvalidInputFormat = "Not accepted: {0}";
// Example prompt
float x = prompter
.PromptFor<float>("x")
.AddTypeHint()
.ForceFinite()
.OfRange(-1, 1)
.NotEqualTo(0)
.Display();
Console.WriteLine($"f(x) = 60 + 10 * {x} = {60 + 10 * x}");

See Demo Project on the source repository for a more full tutorial.