Domain
Rating tiers
Thresholds are product policy and live in code — ratingOf() in score-bar.ts — not in the token file. The cuts are percentages, so the same function serves a 0–5 scale and a 0–10 one.
| Tier | Label | 0–5 | % | Token |
|---|---|---|---|---|
| 5 | Excellent | ≥ 4.5 | ≥ 90 | rating-excellent |
| 4 | Very Good | ≥ 3.5 | ≥ 70 | rating-very-good |
| 3 | Good | ≥ 2.5 | ≥ 50 | rating-good |
| 2 | Fair | ≥ 1.5 | ≥ 30 | rating-fair |
| 1 | Poor | > 0 | > 0 | rating-poor |
| — | Neutral | ≤ 0 / invalid | — | rating-neutral |
Three expressions, not interchangeable
Numeric
4.7
Always one decimal.
4.0, not 4 — a trailing zero signals a measured average, not a whole-number opinion.Tier word
Excellent
RATING_LABELS is the one permitted user-readable string in ui/src/ — product vocabulary, exported so the app can override it.Tier colour
The bar fill, the tier badge, optionally the figure. Never alone — always with the number, the word, or both.
Gold
★★★★★
Stars are gold at every tier. The stars say how many, the colour says how good. Conflate them and neither reads.
Overturned, do not re-litigate
Tier-coloured stars were proposed on the grounds that "there is no gold in the palette". Product screenshots settled it: gold, all tiers, and gold is now a token.
Sporting Scouter Design System
Every token on this site is generated from
theme.css.