06 · Projects
Murex
Murex – A design system across two technologies
The request
At Murex, hundreds of applications and thousands of screens lived on two technical stacks, Java Swing and Angular, with no shared source of truth. Every team rebuilt its own components, and the move from design to development had to be paid for on every project.
The solution
I started with an interface audit and interviews with designers, developers and product managers. Then I built the design system from scratch, over four years: atomic design driven by technology-agnostic design tokens, a Figma library with variables and modes, WCAG accessibility in the foundations, documentation on zeroheight, a contribution process and versioning.
Analysis
I started with a large-scale UI audit: an inventory of components, a survey of duplicated colours and text styles, then a map of what Swing and Angular can each do, and of what they do differently. I filled it in with interviews with designers, developers and product managers.
- what was genuinely reused from one project to the next;
- what was rebuilt because nobody could find it;
- the constraints each technology places on design.
Design
The architecture follows atomic design, driven by technology-agnostic design tokens: you take a decision once and it resolves in both Swing and Angular. In Figma that means a shared library with auto layout components, variants and component properties, then variables with modes for theme and density. WCAG accessibility sits in the foundations rather than being added afterwards.
The real problem was not drawing components, but making one decision hold in two technologies that behave nothing alike.
Documentation
Several dozen components and patterns are documented on zeroheight: anatomy, states, usage guidelines, do and don't, and handoff specs. It became the shared reference for designers and developers, the place where a question gets settled without needing a meeting.
Governance and iteration
A design system nobody tends soon becomes a dead library. So I set up a contribution process, library versioning and a changelog. The most demanding patterns, the dense data tables and the complex forms, were reworked continuously from team feedback.