InsideBoard AI · Brand OS

How this
was built.

Not a changelog. The story behind the decisions — what we were trying to solve, and what we understood along the way.

Chapter 01
Early April 2026
A lone figure at a desk surrounded by scattered, disconnected documents and materials.

The gap

Before there was a document, there was a problem.

The Art Director was one person. The teams producing materials — Sales, CSM, Delivery, France and the US — were not. Decks, proposals, one-pagers went out that had nothing to do with each other visually or tonally. Not because people didn't care. Because there was nothing to hold onto.

There was a logo. There was an old tagline, Activate your success, quietly being phased out. There was a first-generation brand file with a working color system but no strategy behind it — no verbal register, no rules a non-designer could actually follow. Product documentation existed on Confluence, but it used change-management vocabulary the rebrand was explicitly trying to leave behind. Templates were on SharePoint, unsynchronized and unchecked.

"The project went well. It's afterwards that things fall apart."

The real trigger was a PowerPoint question. Someone asked whether to use PPTX or Google Slides. The honest answer — the tool is beside the point, the actual problem is coherence — made it clear what needed to be built. Not a style guide. Not a set of templates. Something closer to an operating system for how the brand thinks and produces.

Over three weeks in early April, the foundations were built in conversation: the six-layer architecture, the four registers, the positioning around performance orchestration. IRON was reframed — not as a feature among others, but as the assistant that makes every other feature reachable everywhere. The copy register was pushed past demonstrative into something that reaches the reader before they've had time to evaluate it. The lightness principle was formalized: levity as a sign of confidence, not a bid for attention.

None of this existed in a file. It existed in text, in drafts, in a back-and-forth that slowly produced a shared vocabulary. The document came later.

Chapter 02
April 22, 2026
Three naming options on the table — Brand System, Brand OS, Brand Source — with Brand OS selected.

Brand OS

Three options. One answer in one line. The decision that reframed everything.

On April 22, three names were on the table: Brand System, Brand OS, Brand Source. The distinction mattered. Each implied a different relationship between the document and the people using it.

Brand System was accurate but inert — it described a collection. Brand OS implied something operational, a thing you run rather than just read. A document that governs how the brand speaks, produces, and operates across every surface isn't a style guide. It's an operating system for the brand. The reply came back in three words: ok pour Brand OS.

A document that goes as far as automating production is not a brand guide. It's an operating system for the brand.

The repo was renamed the same afternoon. The title in the HTML was updated. And retroactively, everything produced in the previous three weeks — the strategy, the verbal identity, the visual system — became part of something with a name that described what it actually was.

That same day: GitHub Pages was set up in a conversation that lasted minutes. The document was renamed index.html — a small technical detail that makes the whole thing work on the web. Sections 00, 04, and 05 were drafted and committed. A mobile responsiveness sprint fixed eight different overflow and table-stacking bugs. Thirteen commits in one day, the document online before the end of the evening.

Chapter 03
April 23–24, 2026
A figure making a surgical edit to a stack of documents, with a padlock on the lower sheet.

Rules for working

The architecture that makes this maintainable without becoming a maintenance project.

Building something alone with an AI collaborator requires rules — not because AI needs rules, but because without them, every edit risks becoming a full rewrite. The first version of the document was a single HTML file with inline styles. It worked. But it was fragile: there was no surgical entry point. Changing a section meant touching the whole file.

April 23 and 24 were about building the structure that would make the next months possible. CSS was split into two files — tokens and components — linked from the root. A content markdown file became the sole source of truth for every word a reader sees. A process document formalized which file to read and which to touch for each type of operation. CLAUDE.md became the auto-read briefing for every new session.

str_replace only. One file per operation.

The first rule means no change ever rewrites more than the section it targets. The second means a content update never accidentally drifts into a token change. Both are obvious. The point of writing them down is that obvious things stop being obvious under time pressure.

April 24 added the layer architecture to the document itself — the component that visually separates each conceptual zone, the nav refactor that grouped sections under their parent layers, the governance rules that tied everything back to a single structural source of truth. A class consolidation reduced two identical caption components to one canonical name. Fonts moved from CDN to self-hosted. Assets were organized into folders that matched the system they belonged to.

Chapter 04
April 25–26, 2026
A token file at the centre, with arrows flowing outward to CSS, Figma, and component specs.

When Brand OS stopped being a name

The document became a system when it started governing itself.

The shift from document to system happened incrementally, then all at once. The accelerator was architecture: a W3C-format token file as the sole source for all design values, a generator script that produced the CSS output, a playground directory where components could be prototyped with fake content before appearing in the document. A distinct skin for the workbench — white background, steel accent — so the tooling is never mistaken for the final artifact.

The token migration required a structural decision that would be hard to undo: three tiers, with global primitives, semantic aliases, and component-specific overrides. The W3C Design Tokens Community Group format was chosen for the source file because it had a clear path to Figma Variables sync via Tokens Studio — unblocking the next phase without committing to it yet.

Architecture Decision Records began accumulating in docs/decisions/. Not for their own sake — to make future changes legible. An ADR that explains why a decision was made is more valuable than the decision itself when you return to a codebase months later and can't remember why you did the thing you did.

An ADR that explains the why is worth more than the decision itself — six months later, when you can't remember.

The project left the studio on April 26: a five-minute internal presentation. For the first time, the Brand OS wasn't being built — it was being shown.

Chapter 05
April 27, 2026 →
An icon grid with anatomical labels and semantic aliases radiating outward.

The language of objects

Icons are the vocabulary. The naming system is the grammar.

Phase 3 opened a question that had no obvious answer: how do you name an icon? Functionally — resize, close, share — or anatomically — what its shape actually is? The two approaches produce systems that look the same and break differently.

Functional naming ties the icon to a single use. resize.svg can only resize. arrows-left-right.svg can resize, expand, compare, drag — whatever the context needs. The shape is the name. The function is the context. Semantic aliases in the registry bridge the two: the same icon has one anatomical name and as many functional aliases as it has uses.

This matters more for AI-assisted production than for any other reason. When the system is asked to illustrate a concept, it consults the registry and retrieves icons by function. If the registry is named anatomically with full functional mapping, retrieval is accurate. If it's named functionally, every new use case requires a new file or a broken search.

Brand iconography and platform iconography are kept strictly separate. They share a naming convention. They do not share a palette or a weight.

The protocol was built first, the icons second. The protocol checks for stroke exports from Figma, refuses vectorized fills from Illustrator, validates the anatomical name, requires a description tag, defines the active state, and appends a full registry entry before considering the icon complete. One icon per run. No shortcuts.

Ongoing