Hat-in-Ring RADAR
As of
{{ asOf }}
{{ trackedCount }}
names tracked

The Field

A non-partisan reading of who is moving toward a 2028 run — ranked by verifiable steps taken and recent activity, not by who you'd vote for.

{{ counterText }}
{{ s.n }}
{{ s.label }}

Field sheet

{{ shownText }} · click a row for the dossier
{{ col.label }}{{ col.arrow }}
{{ r.rank }} {{ r.name }} {{ r.letter }} {{ r.statusLabel }} {{ r.bucketLabel }} {{ r.score }} {{ r.recency }} {{ r.conf }}

Seriousness leaderboard

{{ shownText }}
{{ col.label }}{{ col.arrow }}
{{ r.rank }} {{ r.name }} {{ r.role }} {{ r.letter }}{{ r.party }} {{ r.statusLabel }} {{ r.score }} {{ r.recency }} {{ r.conf }}
{{ r.name }}
{{ r.role }}
{{ r.statusLabel }}
{{ r.headline }}
{{ r.letter }}{{ r.party }} {{ r.score }}
No candidates match these filters. Clear filters

Dossiers

The full file on every tracked figure — where they stand, why, and how the momentum score is built. Pick a name to open their dossier.

{{ dossier.letter }} {{ dossier.party }} {{ dossier.statusLabel }}

{{ dossier.name }}

{{ dossier.role }}
Permalink →
Momentum
{{ dossier.score }}
Confidence
{{ dossier.conf }}
Polling
{{ dossier.pollLead }}

Why it's on the radar

{{ dossier.why }}

“{{ dossier.quote }}”

Momentum ledger

how the score is built
{{ b.label }} {{ b.val }}
Momentum (capped 0–100) {{ dossier.score }}

Momentum measures breadth & recency of activity. Status tier reflects the single furthest verifiable step taken — the two move independently.

Latest dispatch

{{ dossier.recency }}

{{ dossier.headlineTitle }}

{{ dossier.lastSignalLong }} · {{ dossier.source }}

The Wire

Live signal feed
{{ wireCount }} dispatches · newest first

Every reported signal across the field, aggregated and tagged to a candidate. Click any item to open that figure's dossier.

Developing {{ wireLead.recency }} {{ wireLead.tierLabel }}

{{ wireLead.title }}

{{ i.date }} {{ i.letter }} {{ i.name }}

{{ i.title }}

{{ i.source }} {{ t.label }}
No dispatches match. Clear filters