Crate kdam

source ·
Expand description

Ultimate console progress bar for Rust.

Inspired by tqdm & rich.progress

Quick Insight

  • Bar can be used to create progress bars like tqdm.
  • RichProgress can be used to create progress bars like rich.progress.

Examples

use kdam::{tqdm, BarExt};

let mut pb = tqdm!(total = 100);

for _ in 0..100 {
    pb.update(1);
}

eprint!("\n");

Cargo Features

  • gradient: Enables gradient colours support for progress bars and printing text.
  • spinner: Enables support for using spinners.
  • template: Enables templating capabilities for Bar.

Modules

Functions for formatting values.
Monitor mode for progress bars.
Terminal related utilities.

Macros

tqdm like macro for constructing BarIterator if iterable is given else Bar.

Structs

Core implemention of console progress bar.
Create Bar with custom configurations.
Iterable version of Bar.
An implementation rich.progress using Bar.
RowManager allows to store and update many progress bars.
Spinnerspinner
Generic spinner for rendering spinner animations. See styles at rich repository.

Enums

Bar animation styles for Bar.
Renderable columns for RichProgress.

Traits

Comman progress bar functionalities shared between different types of progress bars.
Rust iterators decoration with BarIterator.