01The Static Past
When I joined ICICI Lombard, what existed wasn't a working system—it was aimed at marketing website use cases, outdated and rigid, with broken structure and weak implementation discipline. Patterns didn't hold up against real product UX, and downstream teams rightly avoided it. The flagship IL Take Care app didn't reference it at all.
Across internal tools, customer apps, and partner surfaces, interfaces kept diverging — each shipping its own buttons, forms, colour, typography, and copy. There was no shared language, no reuse at scale.
02The Cost of Drift
The cost of drift was concrete and accelerating:
- 12+ inconsistent color palettes across products, none mapped to brand
- Typography scales that disagreed between web, app, and partner portals
- Components rebuilt from scratch in every new sprint, every team
- No documentation — handoff happened via Slack screenshots
- Brand violations shipping to production with no review surface
03The Mandate
My first ask was scoped: align the IL Take Care app and the ICICI Lombard website on a shared visual language. But the moment I started looking, it was clear the rot ran deeper — and a two-product fix would not survive contact with the other teams.
I rescoped: instead of patching two products, I'd build a system that could earn the rest of the company's adoption on its merits. To do that, I needed evidence — not opinion — to justify the scope to leadership.
04The Audit
I built an evidence grid—same dimensions documented in mature systems—against Adobe Spectrum, Google Material, IBM Carbon, Shopify Polaris, Salesforce Lightning, Atlassian, and Microsoft Fluent. The goal wasn't applause; it was to show exactly what ICICI Lombard already had versus what serious design systems routinely ship, so gaps were undeniable.
The legacy artefact landed at 19.9% coverage versus that benchmark set—not a KPI to celebrate, but proof the old approach was uncompetitive alongside structural and UX-logic failures. Combined with stakeholder pressure on the two flagship products, that deficit is what earned a green light for central ILDS, budget, and a compact core team within two weeks.
Competitive Benchmark
Snapshot shown: 20 high-signal dimensions from full audit
| Dimension | Spectrum | Material | Carbon | Polaris | Lightning | Atlassian | Fluent | IL DS | Phase |
|---|
| Principles | | | | | | | | | P1 |
| Brand values | | | | | | | | | P1 |
| Design tokens | | | | | | | | | P1 |
| Color | | | | | | | | | P1 |
| Typography | | | | | | | | | P1 |
| Surface | | | | | | | | | P1 |
| Elevation / Shadow | | | | | | | | | P1 |
| Shapes | | | | | | | | | P1 |
| Motion | | | | | | | | | P1 |
| Spacing | | | | | | | | | P1 |
| Iconography | | | | | | | | | P2 |
| States | | | | | | | | | P2 |
| Voice & Tone | | | | | | | | | P1 |
| Accessibility | | | | | | | | | P2 |
| Layouts | | | | | | | | | P4 |
| Grid | | | | | | | | | P2 |
| Illustration | | | | | | | | | P3 |
| Data Viz | | | | | | | | | P4 |
| Internationalisation | | | | | | | | | P3 |
| Border Width | | | | | | | | | — |
That matrix showed the pre-ILDS artefacts only covered 19.9% of the patterns leading systems treat as table stakes—evidence of brittle structure, flawed UX logic, and stalled implementation, not a KPI to trumpet. It directly supported the business case to fund the central ILDS programme and lock phasing with leadership.
05Three-Phase Plan
I split delivery into three time-boxed phases so value compounded without open-ended commitments. Each phase had closure criteria before the next started. Since launch we've kept shipping variable and component updates whenever product teams surfaced real requirements—releases never stayed frozen; they matured on a rhythm.
Phase 11.5 months
Foundations
Jun → mid-Jul 2024
- Brand values
- Principles
- Color
- Typography
- Spacing
- Tokens
Phase 22 months
Universal Components
Jul → Sep 2024
- Button
- Text Field
- Checkbox
- Radio
- Text Link
- Dropdown Trigger
Phase 32 months
Product Components
Sep → Nov 2024
- Accordion
- Tab
- Badge
- Toast
- Pagination
- Scrollbar
06Phase 1 · Foundations
Phase 1 ran 1.5 months, June through mid-July 2024. Marketing provided brand guardrails; we owned product-grade colour logic. We defined five principle groups (Primary, Black/White, Secondary, Neutral, Semantic/State), then translated them into 50-900 ramps, semantic tokens, and mode-aware surface tokens. The outcome was a scalable colour engine teams could ship with, not a static style reference.
Color
12 ramps · 4 semantic intentsColour ran through three layers: Spectrum (global ramps), semantic tokens, and mode-aware surface tokens. Core families were Electric Orange, Merlot Maroon, Berkeley Blue, Tomato Red, Amber, Pigment Green, and Warm Gray neutral. Feedback/state tokens were explicitly defined for text, icon, border, background, and action states.
Typography
2 scales · 51 stylesGuidelines anchored type selection, but sizing, responsive scales, pairing rules, truncation, and how styles map into variables were authored and stress-tested inside the design system—not inherited wholesale from decks.
Spacing & Shape
8pt grid · 6 radii8-point base, with 4-point allowance for compact UI. Six radius tokens map directly to component anatomy (input/card/sheet/pill).
Iconography
3 sizes · 1.5 stroke20 / 24 / 32 px sets, single stroke weight, optical alignment baked in. One source SVG sprite consumed by both Figma and the React icon component.
Elevation & Surface
4 elevations · 2 themesFour elevation tokens with light-mode and dark-mode pairs. Surfaces follow the platform — soft on iOS, sharper on web.
Motion
3 durations · 3 curvesThree duration tokens, three easing curves. Component-level motion is parametric, not bespoke — every animation reads from the same primitives.
We enforced one colour contract across products: raw spectrum → semantic tokens → surface tokens → light/dark modes. Contrast decisions were validated through APCA checks and WCAG baselines, while OKLCH exploration kept lightness/chroma behaviour perceptually stable across states and surfaces.
Design tokens shipped in parallel — Figma variables on the design side, a JSON schema on the dev side, with a single Style Dictionary build to keep them aligned. Engineering didn't wait for the system to be "done"; they integrated tokens the week we published them.
07Phase 2 & 3 · Components
Components were prioritised by the journeys every product needed first. Login and onboarding were universal — every new and legacy product needed Button, Text Field, Checkbox, Radio, and Dropdown — so we built that cluster end-to-end before touching anything else.
Each component was anchored to international benchmarks. Before a single pixel moved, the team documented behaviour against Material, Polaris, and Atlassian — anatomy, states, slot rules, accessibility, and motion. Only then did variants ship.
Universal Inputs
Core interactions every product needs — built first, adopted fastest.
8 componentsButtonSelection ButtonText FieldText AreaCheckboxRadioText LinkDropdown Trigger
Selection & Navigation
Controls for choosing, filtering, and moving through content.
6 componentsDropdown MenuTabSwitchFilter: SearchFilter: TagScrollbar
Display & Feedback
Structure, status, and notification patterns.
6 componentsIconDividerBadgeAccordionPaginationToast
After the three phase closures, upkeep stayed continuous: whenever adoption teams filed gaps, we extended variables, patched component states, or published library revisions—with change notes in our shared Slack contract so downstream files never woke up to surprises.
08Governance
ILDS bridged ICICI Lombard's central PMT design org and Digital—different reporting stacks and Figma rituals. The core programme stayed intentionally small: myself plus two embedded designers, each representing one tribe, aligning through a shared component intake, build checklist, and documentation bar before anything entered the canonical library.
1. Intake
Adoption teams file requests in the central Slack channel — pattern, use case, urgency.
→2. Triage
Weekly triage by core team. Reusable patterns become tickets; one-offs are documented as variants.
→3. Build
Owner-led component creation against the standard checklist — anatomy, states, a11y, tokens, docs.
→4. Review
Cross-team review (design + dev + product). Final spec lives in Figma + Storybook in one PR.
→5. Ship & monitor
Library publish + release note in Slack. Adoption tracked via Figma Library Analytics weekly.
We stood up a single Slack channel as the contract: every release, every breaking change, every bug ticket lived there. Adoption teams got SLAs. Bugs were triaged within 24 hours. The channel became the single signal for whether the system was healthy.
09The Ripple
Within a year, ILDS moved from fragile artefacts to measurable infrastructure. The summary tiles below track variable throughput (inserts / week, style volume, etc.). The adoption bars use ILDS Master → Analytics → Components, duration Year, and intentionally show only ranked top-team insertions from production Figma reporting.