Skip to content
/ kdam Public

A console progress bar library for Rust. (inspired by tqdm & rich.progress)

Notifications You must be signed in to change notification settings

clitic/kdam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kdam

kdam is a console progress bar library for rust. It is port of tqdm library which is written in python. kdam supports almost all features of tqdm except a few. It also supports jupyter notebook same as tqdm does. Some features of tqdm can't be ported directly. So they are implemented in different way like, RowManager which manages multiple progress bars but in tqdm progress bars are automatically managed using nrows. In addition to tqdm existing features kdam also provides extra features such as spinners, charset with fill, gradient colours etc. Since, kdam is written in rust its upto 4 times faster than tqdm.

Instantly make your loops show a smart progress meter. Just wrap any iterator with tqdm!(iterator) macro and you're done!

use kdam::tqdm;

fn main() {
    for _ in tqdm!(0..100) {}
}
100%|█████████████████████████████| 100/100 [00:00<00:00, 25854.49it/s]

kdam also supports different bar animation styles. All available bar animation styles are:

kdam/examples/showcase/animations.rs showcase_animations

kdam also supports rich.progress style bars with customizable columns.

kdam/examples/rich.rs showcase_rich_progress_animation

kdam doesn't restrict you to use default progress bar style. You can create your own progress bar using bar_format template. If you are not satisfied with bar_format limited options then you can also build your own custom progress bar.

This is clone of alive-progress using kdam.

kdam/examples/template.rs showcase_alive_progress_template

If you like colours then you can also create a gradient progress bar.

kdam/examples/coloured/gradient.rs showcase_gradient

Getting Started

Add this to your Cargo.toml file.

[dependencies]
kdam = "0.6.2"

Or add from command line.

$ cargo add kdam

See docs and examples to know how to use it.

License

Dual Licensed

About

A console progress bar library for Rust. (inspired by tqdm & rich.progress)

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published