https://github.com/ctongfei/progressbar
Terminal-based progress bar for Java / JVM
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.8%) to scientific vocabulary
Keywords
Repository
Terminal-based progress bar for Java / JVM
Basic Info
- Host: GitHub
- Owner: ctongfei
- License: mit
- Language: Java
- Default Branch: main
- Homepage: http://tongfei.me/progressbar/
- Size: 3 MB
Statistics
- Stars: 1,140
- Watchers: 17
- Forks: 112
- Open Issues: 25
- Releases: 26
Topics
Metadata Files
README.md
progressbar
A console progress bar for JVM with minimal runtime overhead.

Menlo, Fira Mono, Source Code Pro, Iosevka, JetBrains Mono or SF Mono are recommended for optimal visual effects.
For Consolas or Andale Mono fonts, use ProgressBarStyle.ASCII because the box-drawing glyphs are not aligned properly in these fonts.

Documentation
Installation
Maven:
xml
<dependency>
<groupId>me.tongfei</groupId>
<artifactId>progressbar</artifactId>
<version>0.10.0</version>
</dependency>
Usage
Declarative usage (since 0.6.0):
java
// Looping over a collection:
for (T x : ProgressBar.wrap(collection, "TaskName")) {
...
// Progress will be automatically monitored by a progress bar
}
Imperative usage (since 0.7.0 switched to Java's try-with-resource pattern):
java
// try-with-resource block
try (ProgressBar pb = new ProgressBar("Test", 100)) { // name, initial max
// Use ProgressBar("Test", 100, ProgressBarStyle.ASCII) if you want ASCII output style
for ( /* TASK TO TRACK */ ) {
pb.step(); // step by 1
pb.stepBy(n); // step by n
...
pb.stepTo(n); // step directly to n
...
pb.maxHint(n);
// reset the max of this progress bar as n. This may be useful when the program
// gets new information about the current progress.
// Can set n to be less than zero: this means that this progress bar would become
// indefinite: the max would be unknown.
...
pb.setExtraMessage("Reading..."); // Set extra message to display at the end of the bar
}
} // progress bar stops automatically after completion of try-with-resource block
NEW in 0.9.0: You can now use multiple progress bars for parallel jobs:
java
try (ProgressBar pb1 = new ProgressBar("Job1", max1);
ProgressBar pb2 = new ProgressBar("Job2", max2)) { ... }
Kotlin extensions
Kotlin DSL-like builders are available at reimersoftware/progressbar-ktx.
Changelog
Owner
- Name: Tongfei Chen
- Login: ctongfei
- Kind: user
- Website: https://tongfei.me
- Twitter: ctongfei
- Repositories: 12
- Profile: https://github.com/ctongfei
(Natural | Programming) language processor
GitHub Events
Total
- Issues event: 7
- Watch event: 62
- Issue comment event: 16
- Push event: 1
- Pull request event: 4
- Fork event: 11
- Create event: 1
Last Year
- Issues event: 7
- Watch event: 62
- Issue comment event: 16
- Push event: 1
- Pull request event: 4
- Fork event: 11
- Create event: 1
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Tongfei Chen | t****i@p****m | 147 |
| Martin Vehovsky | v****y@g****m | 7 |
| meawoppl | m****l@g****m | 4 |
| bernard.wittwer | b****r@l****h | 3 |
| Muhammet Sakarya | e****a@p****r | 3 |
| Alex Peelman | a****n@b****i | 3 |
| Aluísio Augusto Silva Gonçalves | a****o@a****e | 3 |
| Jan Heinrich Reimer | m****l@h****m | 3 |
| ilya (leo) | h****5@g****m | 3 |
| Alexander Petrossian (PAF) | A****n@t****u | 2 |
| Wenxuan Zhang | w****m@g****m | 2 |
| Sean Flanigan | s****n@f****m | 1 |
| bgriner | b****r@s****m | 1 |
| Abhinav Vishak | a****k@g****m | 1 |
| Aleksandr Pakhomov | a****v@g****m | 1 |
| AndreiNekrasOn | a****0@y****u | 1 |
| Brett Smith | b****t@l****m | 1 |
| DJ Gregor | dj@o****g | 1 |
| KM Tong | k****g@y****n | 1 |
| Karl Heinz Marbaise | k****a@s****e | 1 |
| Kristof Farkas-Pall | k****s@g****m | 1 |
| Michael Siepmann | m****7@y****e | 1 |
| Mordechai Meisels | m****2@g****m | 1 |
| Nikr Quin | 7****V | 1 |
| Oliver Kopp | k****v@g****m | 1 |
| Sergey Nuyanzin | s****n@g****m | 1 |
| Zaahid Bateson | z****n | 1 |
| dani09 | d****l@d****e | 1 |
| okfk | 6****e | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 83
- Total pull requests: 37
- Average time to close issues: 8 months
- Average time to close pull requests: 3 months
- Total issue authors: 65
- Total pull request authors: 26
- Average comments per issue: 3.1
- Average comments per pull request: 1.68
- Merged pull requests: 28
- Bot issues: 0
- Bot pull requests: 1
Past Year
- Issues: 5
- Pull requests: 3
- Average time to close issues: about 1 month
- Average time to close pull requests: about 23 hours
- Issue authors: 5
- Pull request authors: 3
- Average comments per issue: 0.2
- Average comments per pull request: 0.33
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- ctongfei (8)
- aguedeney (5)
- MagnusErikssonAB (3)
- koppor (3)
- azachar (2)
- NikR-IV (2)
- ImSejin (2)
- rharder (1)
- imcaofei (1)
- hohwille (1)
- kilianfriedrich (1)
- astubbs (1)
- mordechaim (1)
- hrj (1)
- andxu (1)
Pull Request Authors
- ctongfei (8)
- heroesleo65 (3)
- vehovsky (3)
- brett-smith (2)
- koppor (2)
- mesat (2)
- okafke (2)
- mordechaim (1)
- heinrichreimer (1)
- AndreiNekrasOn (1)
- NikR-IV (1)
- PakhomovAlexander (1)
- jan-vcapgemini (1)
- dependabot[bot] (1)
- ABDERRAHMANE-OUALI (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
- Total downloads: unknown
- Total docker downloads: 12,737,101
- Total dependent packages: 49
- Total dependent repositories: 434
- Total versions: 26
repo1.maven.org: me.tongfei:progressbar
A terminal-based progress bar for JVM
- Homepage: http://github.com/ctongfei/progressbar
- Documentation: https://appdoc.app/artifact/me.tongfei/progressbar/
- License: MIT
-
Latest release: 0.10.1
published almost 2 years ago
Rankings
Dependencies
- org.jline:jline 3.23.0
- org.junit.jupiter:junit-jupiter-api 5.9.2 test
- org.junit.jupiter:junit-jupiter-engine 5.9.2 test
- org.slf4j:slf4j-api 2.0.5 test
- org.slf4j:slf4j-simple 2.0.5 test