Progress
Progress
How far something has got, carried as a ratio between 0 and 1 in a custom property — the same way the status circle carries its arc, so both sides of the stack fill the bar with one declaration. Twig prints the value it is given; moving it afterwards is the browser's business.
States
The value is a count or a share written as a percentage, and never answers outside its bounds. The colour is the feedback one, so a bar says how its work ended in the same language as a message or a status.
Queued0%
Building assets35%
Uploading72%
Deployed100%
Migration failed58%
Without a total
A hundred is what a bar counts to when nobody says otherwise, which makes a percentage the only thing to give it. A total of its own is for work counted in things rather than in parts.
Files read43%
An end that is not known
Work under way whose size nobody knows: the bar sweeps and says no number. Claiming a share here would be a guess dressed as a measurement.
Looking for something
Compact
Reduced to what it has to say, for a status line or a footer: a thinner track, the wording beside it rather than above, and the density passed on to whatever stands with it.
Vue, driven
The same bar, with the vocabulary the cli progress already speaks — update, advance, finish, reset. A step with nothing said about it is worth one unit, which is what to call where neither the unit nor the total means anything.