The method matured over the five, and the current system is the most controlled. But the consulting systems taught me the more useful lesson, because I was never going to be their long-term owner.
A system that only lives in its author's head dies when the author leaves. On a consulting contract that isn't a risk, it's a certainty. So the work wasn't only building the system — it was making sure the engineers and founders I built it with understood why it did what it did. Without that shared reasoning, the system drifts the moment I'm out of the room and every new case gets solved from scratch.
That pushed everything toward explaining rather than specifying. On the current system, where I am the long-term owner, I've kept the same instinct and taken it further.
Patterns are documented as features. Each core pattern has a PRD explaining the business reason behind it, plus view and flow documents holding the detail. Not a component with a name, but a decision with a rationale.
Every change is logged, including the ones we don't make. A decision log records what changed and what we deliberately left alone, so the system has a history rather than just a current state.
Contribution is low-hierarchy. If an engineer or someone in QA hits a gap, we work it through together with the front-end lead, log the decision, then version the library and the supporting documents.
Built with engineering, not handed to it. The current system is built alongside our lead front-end engineer, on the component library the product actually uses.