## Showcase shelf

### 01. CityScout, from idea to enterprise

- Client: CityScout
- Years: 2025 to 2026
- Role: Design lead for the brand, the Athens design system, and product prototypes
- Categories: Design systems, Brand
- Link: /athens-cityscout
- On the shelf: A temple under restoration

Brand, design system, and product design for an AI-built real estate startup, from its first logo to enterprise deals.

I designed CityScout's first logo when it was still an idea, and came back as design lead once it was closing multimillion-dollar enterprise deals. I rebranded it for those clients and delivered Athens, its design system, in about a month, as a package the team's engineers and AI agents both build from.

Before this work: The launch look stretched over a growing product, which went through four looks in fourteen months.

### 02. Theming at enterprise scale

- Client: Capital One
- Years: 2024 to 2026
- Role: Project lead for the Figma variables migration, systems designer, and education lead
- Categories: Design systems, Migration
- Scope: Five libraries: Foundations, iOS, Android, Web, and Designer Documentation
- Link: /theming-migration
- On the shelf: A phone in light and dark mode

Leading design system migration to theming tokens for brand refresh, acquisition, and dark mode capability.

I led the move of five libraries onto Figma variables and semantic tokens, so that design matched code. Theming became a switch instead of a redraw, which is how the brand refresh, dark mode, and Discover reached every screen built on the system.

Before this work: Dark mode painted by hand, screen by screen, with anything missed left glaring white.

### 03. Enterprise system deprecation

- Client: Capital One
- Years: 2025 to 2026
- Role: Deprecation design lead for the global system libraries
- Categories: Design systems, Migration
- Scope: Five current libraries, 4 legacy libraries, 3,000+ designers and developers, 500+ features
- Link: /deprecation-strategy (password protected; ask Ashley for access)
- On the shelf: A retired component under glass

Defining how a design system migrates legacy libraries.

I wrote the standard for retiring components across the whole system, with a six month timeline, the warnings designers see in Figma, and the support behind each migration. Engineering carried it into code, so designers and developers read the same status and deadline.

Before this work: The fast path, where old components are deleted and thousands of files break at once.

### 04. Leading enablement & advocacy

- Client: Capital One
- Years: 2024 to 2026
- Role: Enablement lead, and experience and communications lead for the design system
- Categories: Enablement
- Scope: 3,000+ cross-functional system consumers, 600+ designer training and onboarding, and 5 design system component libraries
- Link: /design-system-enablement (password protected; ask Ashley for access)
- On the shelf: A presentation stand, mid-talk

Scaling system adoption from education to enablement.

I helped make education part of the design system itself, with trainings, onboarding, office hours, and a quarterly forum for every level. I planned and taught trainings across product, tech, and design, and let what designers told us decide what came next.

Before this work: A wall of documentation, with designers left to find their own way through it.

### 05. Component craft & engineering

- Client: Capital One
- Years: 2023 to 2026
- Role: Systems designer for component design, specs, documentation, and developer QA
- Categories: Design systems, Craft
- Scope: 16+ components across iOS, Android, and Web, serving 31+ consuming teams
- Link: /design-system-component-builds (password protected; ask Ashley for access)
- On the shelf: One button, built to be pressed

Highlights of system components in native and web.

I designed components for iOS, Android, and Web from first sketch to shipped code, including the Card and the action menu. Each one shipped with clear boundaries, a spec, and documentation, so teams could use it correctly without me in the room.

Before this work: Every team building its own button, each one slightly different.

## Rosemary, made readable by agents

- By: Ashley Zhu, 2026
- Categories: systems, ai

Rosemary is the design system this site is built on. I wrote it for the people and the AI agents who build with it, then measured whether the agents follow it.

- Guidance: The project's agent instructions tell Claude which tokens, text styles, motion, layers and components to use, and what to do when something is missing.
- Check: A script flags any color, font size, spacing, radius, motion or z-index value that bypasses a token, and the site will not build until every one is fixed.
- Eval: I gave Claude 9 everyday requests, such as a filter, a dialog and a newsletter sign-up. Each one was built by a fresh Claude agent in its own copy of the site, once with the Rosemary guidance removed and once with it in place.
- Result: Off-system values fell from 6.3 to 0.0 per 100 CSS declarations. The agent used the right Rosemary component in 27 of 27 runs with the guidance and 9 of 27 without it. The site still built after 27 of 27 runs with the guidance and 26 of 27 without it.
- Method: Each task ran three times in each version with Claude Sonnet, and the same check scored both. I dropped a tenth task because the site already did what it asked. I built the eval with Claude Code.
