Run Tasks with a Spinner

Show a spinner animation while awaiting async operations

When you have an async operation, use the .Spinner() extension.

Show a Spinner While Waiting

To display a spinner during an await, call .Spinner().

await Task.Delay(2000).Spinner(Spinner.Known.Dots);

Change the Animation

To use a different spinner, pass a Spinner.Known value.

await Task.Delay(2000).Spinner(Spinner.Known.BouncingBar);

Get a Result

To get a value back, call .Spinner() on a Task<T>.

var result = await FetchDataAsync().Spinner(Spinner.Known.Star);
AnsiConsole.MarkupLine($"[green]Got result: {result}[/]");

See Also