One hue, three purples,
and six things that aren't colour
E won, so this takes it seriously: every neutral derived from indigo, no cream anywhere,
and #4265C4 given a real job rather than a cameo. But the harder
part of the question was the other one — what else makes it feel like us? —
and the answer had better not be more colour, because a recoloured admin, a colour-blind
reader and a greyscale screenshot all strip that away. §2 is six devices that survive
all three.
We already had three, and I had the main one wrong
Reading TangibleLogo.tsx to get the mark's geometry turned up
something worth correcting: the brand mark's chevron is
#9E9CF7 — a light periwinkle — not the
#6359D6 the app and the design catalogue use. So "our purple" has
been two different colours in two different places for a while. Adding your
#4265C4 makes a three-stop ramp we already own, and the useful
move is to give each stop a job rather than pick a winner.
| Stop | Where it comes from | Its job here | Never |
|---|---|---|---|
#9E9CF7 |
The logo chevron. | Marks and fills. The progress tiles, crop marks, the mark itself. The lightest stop, so it can appear often without weight. | Text. It fails contrast below 18px. |
#5B51C9 |
The app indigo #6359D6, one step deeper for text contrast. |
Structure. Section numbers, the band's rule, the current-step rail, headings' accent. The load-bearing stop. | A filled button. Core owns that. |
#4265C4 |
Your midpoint of our indigo and core's blue. | Data. Every mono value, the meter fill, the address code. It is the bluest stop, so it reads as machine output next to core's blue without imitating a control. | Anything clickable. Its whole risk was looking like a link. |
#FD9597 |
The mark's salmon square. | Once per screen, at 5px. The completion tile, and nothing else — see §2.1. | A semantic. Red means error in wp-admin. |
The answer to "what else makes it us"
The best idea on this page, and it fell out of reading the logo rather than inventing anything. Our mark is a 3×3 grid of six tiles — five chevron tiles plus a salmon foot. A six-cell object in a five-step flow is not a coincidence worth wasting: the tiles fill as you advance, and the salmon tile — the one colour we can never use as a semantic, because red means error here — lights only on completion. Identity and function in one object, and our most distinctive colour finally gets a job it can hold.
step 1
step 3
step 5
done
17px and 29px. At 17px it is a favicon-sized identity mark that happens to encode state; nothing else in the admin does that.
The honest caveat: six tiles means the flow has to be five steps or fewer, and §3 of the main proposal made step count dynamic. So this either constrains the flow, or the mark shows proportion rather than a step count and the exact tile mapping is a lie. Worth deciding deliberately rather than discovering.
Four corner ticks, inset 5px, one hairline each. A print and drafting convention, so it reads as technical rather than decorative — and nothing in wp-admin uses it, so it is unclaimed.
licence
Creator · 3 of 5 sites
Two hairlines 1px apart rather than one. Reads as a printed rule instead of a CSS
border, costs one background-image, and is invisible as a
trick while being immediately different.
Two optional things
Against a single 1.5px rule, below:
Two optional things
A whole-screen discipline, not a component: every number is monospace and tabular, every word is the admin stack. Versions, counts, sizes, dates, keys. Nobody in wp-admin does this consistently, and it costs nothing.
Indexed 1,248 items in 41s
PHP 8.2.14 · WordPress 6.8.1
Renews 2027-03-14
The same lines set entirely in the admin stack:
Indexed 1,248 items in 41s · PHP 8.2.14 · Renews 2027-03-14
A stable short code per screen, printed small and always in the same place. Identity that is also useful: support can say "open SS·02" and mean exactly one screen. The best devices earn their place twice.
Also the quiet fix for a real problem: a wizard step has no URL a human can quote, and "the second screen, the one with the checkboxes" is how support tickets actually describe it today.
The copy voice. Costs nothing, survives greyscale, and in wp-admin — where every other plugin shouts — restraint is more recognisable than any hex value on this page.
All of it, on two real screens
Every device above, in place, in the actual environment. Count the purples: four stops doing four jobs, and not one of them on a button or a link.
SearchSync
Two optional things
Two questions, and no is a complete answer to both. The plugin works the same either way.
Send us diagnostics?
The whole payload, as it stands on this site:
| site | oakhill-learning.com |
| php | 8.2.14 |
| wordpress | 6.8.1 |
| searchsync | 2.1.0 |
Release notes by email?
Roughly monthly, to dana@oakhill-learning.com. Separate from licence and receipt mail, which arrives either way.
SearchSync
Note the mark in the band is doing double duty — brand and progress — which means the band needs no "step 3 of 5" text at all. That is the test of a good device: it removes something rather than adding to it.
How much of this do we actually turn on?
You worried about being too playful. Rather than guess the right level, here is the same band at three positions, so the question becomes a choice instead of a debate. Nothing below changes the token set — only how loudly the devices are used.
restrained
Two optional things
No band tint, no crop marks, mark in grey.
Identity is the mark's shape and the mono. A cautious first ship; almost impossible to object to.
house — recommended
Two optional things
Tinted band, crop marks, double rule.
All six devices at their quietest setting. Reads as a considered tool, not a branded one.
expressive
Two optional things
Solid indigo band, salmon current tile.
Confident, and the only one that could be mistaken for a marketing surface. This is the level teamtangible.com sits at — and §5 argues it is the wrong level here.
It isn't playful, and its gift is the writing
I fetched it to check the premise, and the premise doesn't hold. It came back "business-focused rather than playful" — restrained typography, generous whitespace, grayscale client logos, "minimal decorative elements; functionality-first". So there is far less tension between the public site and wp-admin than the question assumed. The thing worth stealing is the voice:
"Break free from the bad design, lock-in, limited features, and scaling issues"
"Get the tech out of the way so you can focus on what's important: your learners"
"Renting someone else's LMS is a path to building their business, not yours"
The pattern in all three: name the reader's problem in their words, then remove it. No exclamation, no "Oops!", no cheerfulness. Applied to onboarding copy that is the difference between
Generic: "Help us improve SearchSync by sharing anonymous usage data!"
Ours: "It tells us which PHP and WordPress versions to keep supporting. This is the whole payload, as it stands on this site right now."
Three questions, cheapest last
The mark encodes six states and the flow's length is resolved at runtime. Either the flow is capped at five steps, or the tiles show proportion and the mapping is approximate. I lean cap it at five — a setup wizard longer than five steps is a different problem — but it is a constraint the frame would then impose on every plugin, so it belongs to whoever owns the extension contract.
The mark says #9E9CF7, the app says #6359D6.
That divergence predates this work and is not mine to settle, but it will keep
producing this question. Worth one decision somewhere durable.
SS·02 is the one device that adds a concept rather than a style. It is genuinely useful for support and it is also the easiest thing here to call over-engineered. Cheapest to remove: delete one span.