Connection lost. Reconnecting… attempt 1 of 8
Paused. Your work is held on the server.
Could not reconnect.
This session has expired on the server.
DR.Simple_UI
Showing main. This can be ahead of the version your app has installed — check what a class says it needs before copying it. Releases (opens in a new tab)

Badges

tier 2 — classes

.badge is a neutral pill. The semantic modifiers carry the same meaning as the button families; the three categorical hues carry none at all.

Semantic

Use these when the colour means something. They follow the colour-blind toggle.

Neutral Approved Pending Failed Informational Secret
<span class="badge">Neutral</span>
<span class="badge badge-go">Approved</span>
<span class="badge badge-warn">Pending</span>
<span class="badge badge-danger">Failed</span>
<span class="badge badge-info">Informational</span>
<span class="badge badge-secret">Secret</span>

Three sizes

A badge is a label, not a target, so its sizes are a type scale rather than the control heights. It has to sit inside a line of text, a table cell and a card title without setting the line height, which is why .badge-lg is 12px text and not a 36px pill.

badge-sm default badge-lg
In a line of text a badge-sm does not push the line taller,
Beside a heading a badge-lg holds its own.
<div class="dr-col dr-gap-2">
    <div class="dr-row">
        <span class="badge badge-sm">badge-sm</span>
        <span class="badge">default</span>
        <span class="badge badge-lg">badge-lg</span>
    </div>
    <div class="dr-row dr-baseline">
        <span>In a line of text a <span class="badge badge-sm badge-go">badge-sm</span> does not push the line taller,</span>
    </div>
    <div class="dr-row dr-baseline">
        <span class="text-lg">Beside a heading a <span class="badge badge-lg badge-warn">badge-lg</span> holds its own.</span>
    </div>
</div>

Categorical

For distinguishing categories that have no ranking — a type, a queue, a source. Reach for these only after the semantic set, and never to imply good or bad.

Login Job API
<span class="badge badge-cyan">Login</span>
<span class="badge badge-orange">Job</span>
<span class="badge badge-teal">API</span>

With an icon

Sent 12 min Breached
<span class="badge badge-go"><i class="ri-check-line"></i> Sent</span>
<span class="badge badge-warn"><i class="ri-time-line"></i> 12 min</span>
<span class="badge badge-danger"><i class="ri-alert-line"></i> Breached</span>

In a card header and a table cell

The two places badges actually live.

ORD-4209
Pending P3
ActionOutcomeAge
RoutingApplied4 min
PriorityRejected18 min
<div class="card" style="width:100%">
    <div class="card-head">
        <strong>ORD-4209</strong>
        <div class="card-head-right">
            <span class="badge badge-warn">Pending</span>
            <span class="badge">P3</span>
        </div>
    </div>
    <table class="table">
        <thead>
            <tr><th>Action</th><th>Outcome</th><th>Age</th></tr>
        </thead>
        <tbody>
            <tr><td>Routing</td><td><span class="badge badge-go">Applied</span></td><td class="col-muted">4 min</td></tr>
            <tr><td>Priority</td><td><span class="badge badge-danger">Rejected</span></td><td class="col-muted">18 min</td></tr>
        </tbody>
    </table>
</div>