Skip to content

Logs a progress bar and estimation for how long a Promise will take to complete

Notifications You must be signed in to change notification settings

JosephAntony/progress-estimator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

progress-estimator

Logs a progress bar and estimation for how long a Promise will take to complete. This library tracks previous durations in order to provide more accurate estimates over time.

Demo

Usage example

const {logProgress, configure} = require('progress-estimator');

// Configuration is optional, but it's recommended to specify a storage location.
// Learn more about configuration options below.
configure({
  storagePath: join(__dirname, '.progress-estimator'),
});

async function run() {
  await logProgress(promiseOne, "This promise has no initial estimate");
  await logProgress(
    promiseTwo,
    "This promise is initially estimated to take 1 second",
    1000
  );
}

Configuration

The following values are configurable via the named configure export. Note that all configuration is stored at the package level.

name type Description
spinner object Which spinner from the cli-spinners package to use. Defaults to dots.
storagePath string Where to record durations between runs. Defaults to os.tmpdir().
theme object Custom chalk theme. Look to the default theme for a list of required keys.

About

Logs a progress bar and estimation for how long a Promise will take to complete

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 82.1%
  • TypeScript 17.9%