Appearance
How the Tech Radar works
Rings
A ring is a statement about commitment, not about quality.
| Ring | Meaning |
|---|---|
| Adopt | The default choice. Picking something else needs a justification. |
| Trial | Worth pursuing on real work, with someone accountable for the outcome. |
| Assess | Worth understanding and prototyping, not yet worth committing to. |
| Hold | Do not start anything new with it. Existing usage is not an emergency. |
Quadrants
| Quadrant | Holds |
|---|---|
| Techniques | Ways of working, practices, and design approaches. |
| Tools | Software we run to build, verify, or operate things. |
| Platforms | Things we build on top of, such as runtimes, infrastructure, hosted services. |
| Languages & Frameworks | Programming languages and the libraries we write code against. |
Every quadrant also has its own page, holding one quadrant of the board and the full list for it. That is the place to read a crowded quadrant, and it is reachable from the quadrant name on the board.
Rings, quadrants, and editions are data, not code. They live in .vitepress/radar.ts, and every blip is validated against them at build time. Adding a quadrant there adds its page and its sidebar entry.
Editions
The radar is published as editions. A blip does not carry a current ring; it carries the ring it held in each edition it appeared in:
yaml
history:
- edition: '2026.1'
ring: assess
- edition: '2026.2'
ring: trialThe ring shown on the board is the one from the newest published edition that the blip has an entry for. Movement is a statement about the current edition only: a blip with no entry for it did not move, whatever it did in the past. This is why the board can show that something moved without anyone maintaining a "moved" flag by hand:
- A circle means the ring did not change.
- A triangle pointing inward means it moved toward Adopt.
- A triangle pointing outward means it moved away from Adopt.
- A dashed halo means the blip is new in this edition.
A blip whose history starts in a future edition is not rendered, so the next edition can be prepared in the open without publishing it early.
Adding or moving a blip
Create the file:
shell
mise run start_radar_item "Some Technology"Then fill in the frontmatter and say why in the body. Rules the build enforces:
quadrantand everyringmust exist in the taxonomy.- Every
editionmust exist in the edition list, and may appear at most once per blip. adr, when present, must point at a real ADR directory undersrc/adrs.
Moving a blip means appending a new entry to its history for the current edition. Never edit a past entry, because that rewrites what the radar said at the time.
A blip that overlaps an existing decision should link to it with adr. If the ring you want contradicts an approved ADR, the ADR is the thing to change first.