01 · Research & Trends

What's shaping design systems in 2026

Before touching a single pixel, we spent six weeks studying what the best teams in the world were doing — and more importantly, why. Here's what actually mattered for a food delivery experience in Vietnam's market.

01

Accessibility-First, Not Afterthought

The European Accessibility Act and WCAG 2.2 have made compliance non-negotiable. But beyond compliance — designing for Bà Thu's low-vision needs or Minh's allergen anxiety makes the experience better for everyone.

02

Design Tokens Over Random Values

Leading systems like IBM Carbon and Atlassian use tokens — named values for colour, spacing, and type — that work across platforms. We adopted 20–30 core tokens... not the 200+ that create decision paralysis.

03

Sensory & Tactile Interfaces

Google's Material Expressive and Apple's Liquid Glass signal a shift toward interfaces that feel alive — depth, motion, and texture that respond to touch. We applied this to our product cards and delivery tracker.

04

Intentional Simplicity

In 2026, design is less about perfection and more about presence. We stripped away visual noise to let the food shine and the ordering flow feel effortless — especially on mobile in Saigon traffic.

05

AI-Driven Personalisation

Systems that adapt to behaviour — like Netflix's content model — are now expected. Our recommendation engine learns from order history and persona segments to surface what each user actually wants.

06

Sustainability-Conscious Design

The W3C Web Sustainability Guidelines push for data-light patterns and efficient assets. Lighter pages load faster for Linh on a motorbike using 4G — sustainability and performance align perfectly.

02 · User Personas

Three people who needed to be seen

These aren't demographic archetypes. They're portraits of real emotional states — built from user interviews, field research, and the UCDC framework. Because that's the only way to design something that actually works.

🎧

Linh Nguyen

22 · Student / Part-time barista · HCMC

  • Order in under 90 seconds
  • Trendy, shareable food worth posting
  • Loyalty points she can actually use
  • Inconsistent promo codes across platforms
  • Unclear delivery ETAs create real anxiety
  • ADHD pattern: mid-flow distraction → error recovery friction
  • Phone in bright sunlight — contrast critical
  • Touch targets must be ≥44×44px

"I just want to feel like I made a smart, cool choice."

💼

Minh Tran

34 · Marketing Manager · Hanoi

  • Transparent allergen info before ordering
  • Reliable 30-min promise for family dinners
  • Bundle deals that make the math easy
  • Allergen info buried 3 taps deep
  • Price comparison anxiety vs. local food
  • Fatigue after work — high cognitive load
  • Presbyopia — minimum 16px font critical
  • Allergen info accessibility is safety-critical

"I need to trust this brand. If it lets my family down, I won't come back."

🌿

Bà Thu

58 · Retired teacher · Da Nang

  • Vietnamese-language UI, no confusing jargon
  • Menu items bridging familiar and new
  • Simple support pathway if stuck
  • Cultural disconnect — brand doesn't "get" her
  • Language barrier anxiety with staff
  • Social judgment around Western fast food
  • Low-vision risk: 18px+ text, 7:1 contrast preferred
  • Touch targets minimum 56×56px

"I want to feel welcome — not like a tourist in my own country."

03 · Wireframes

Rapid wireframes validated against all three personas

Low-fidelity wireframes built in Figma and validated with engineering and marketing partners. Every screen was stress-tested: would Linh get through it in 90 seconds? Could Minh find allergen info in one tap? Would Bà Thu feel lost?

Home & Discovery

Hero promo banner → personalised recommendations grid → bottom navigation. Designed for Linh's speed: featured items within thumb reach, clear visual hierarchy.

Cart & Checkout

Cart items with large remove targets (48×48px) → promo code with clear error messaging → order summary → full-width CTA. Designed for error recovery: Linh's accidental deletions, Minh's promo code failures.

04 · Visual Style Guide

A cohesive visual language rooted in warmth & trust

Every colour, type choice, and spacing value is intentional. The system is warm enough to feel inviting (especially for Bà Thu), clear enough to build trust (for Minh), and contemporary enough to feel aspirational (for Linh).

Colour Palette

Following the 60-30-10 rule: 60% neutral cream (calm, warm canvas), 30% white surfaces (clean cards, forms), 10% Pizza Hut red (energy, CTAs). All combinations pass WCAG AA contrast minimums.

Brand Primary

PHV Red#E41A2A
Red Dark#B5141F
Red Light#FF4D5A
Red BG#FFF0F1

Warm Neutrals

Charcoal#1A1714
Charcoal Soft#3D3632
Muted Dark#6B5F56
Muted#9A8F89
Muted Light#C4BBB3

Surfaces

White#FEFEFE
Cream#FAF8F5
Cream 2#F2EDE6
Cream 3#EAE4DC

Semantic

Success#1A8A4A
Warning#D4A03C
Terracotta#C17A5A
Error / CTA#E41A2A

Typography

Two typefaces, carefully paired. DM Serif Display for headings — warm, editorial, trustworthy. DM Sans for body — clean, legible, modern. Scale ratio: 1.25 (Major Third). Minimum 16px body to meet Minh's presbyopia needs; 18px+ preferred for Bà Thu's context.

Display
3.815rem / 61px
Pizza Hut
Heading 1
2.441rem / 39px
Giao hàng nhanh
Heading 2
1.953rem / 31px
Menu & Khuyến Mãi
Heading 3
1.563rem / 25px
Đặt hàng ngay
Body
1rem / 16px
Chào mừng bạn đến với trải nghiệm đặt hàng Pizza Hut Việt Nam hoàn toàn mới.
Small
0.8rem / 12.8px
Phí giao hàng miễn phí cho đơn từ 200.000₫
Mono / Code
1rem / 16px
--phv-red: #E41A2A;

Spacing Scale (8pt Grid)

All spacing follows multiples of 8px, with 4px for fine-tuning. Related items sit 8–16px apart. Sections breathe at 48–64px. This isn't arbitrary — it creates the unconscious rhythm that makes interfaces feel "right."

4
8
12
16
24
32
48
64

Elevation & Shadows

Original neutral shadows for structural depth, plus new warm-tinted red/terracotta shadows for CTA cards — creating a "glow" that feels inviting rather than heavy.

Neutral Shadows

xs
sm
md
lg
xl

✦ New: Warm Tinted Shadows — CTAs & Product Cards

red-sm
red-md
red-lg
warm-sm
warm-md

Border Radius

Medium-rounded (8–16px) — modern and friendly for a consumer food app. Rounded enough to feel approachable, but not so playful it undermines trust.

6px
12px
16px
24px
full

05 · UI Components

A living component library built for real use

Every component is designed for accessibility first, then refined for visual craft. Buttons and inputs share height scales. Touch targets meet 44×44px minimum (48px preferred). Focus indicators never suppressed.

Buttons

Form Inputs

E.g. BOGO2026 — case insensitive

⚠ Please enter a complete address with district

Tags & Status

🔥 Best Seller ⭐ New ✓ Free Delivery Combo

Allergen Badges (Inline — No More PDF)

🌾 Wheat 🥛 Dairy ✓ Nut-Free ✓ Egg-Free

Product Card — ✦ Enhanced: "Break the Grid"

Food images now escape the card boundary — creating depth, abundance, and visual appetite appeal. The image overlaps the top edge, making food "pop" off the screen rather than sit constrained inside a box.

Before — Contained

Pizza visual
Seafood Pesto Supreme
🌾 🥛 ✓ Nut
189.000₫

✦ After — Break the Grid

🍕
Seafood Pesto Supreme
🌾 🥛 ✓ Nut
189.000₫

06 · High-Fidelity Mockups

From wireframe to pixel-perfect prototype

These prototypes were built in Figma and tested with 12 participants across all three persona segments using Maze for unmoderated testing and Hotjar for session recordings. Each round of feedback reshaped the design.

Pizza Hut
🔍
🛒
Limited Time

Mua 1 Tặng 1

Chỉ áp dụng qua app · Kết thúc 15/03

Seafood Pesto
189.000₫
🌾
Gà Giòn BBQ
129.000₫
Salad Tươi
79.000₫
Family Box
399.000₫
Couple Deal
249.000₫
Trang chủ
Menu
Ưu đãi
Tài khoản

Home — Personalised Feed

AI-driven recommendations + inline allergen badges + clear promo hierarchy

← Theo dõi đơn hàng
📞
🛵 Đang giao · ETA 12 phút
Cập nhật lúc 19:23 — Tài xế đang trên đường Lê Lợi
Đơn đã xác nhận
19:05
Đang chuẩn bị
19:12
Đang giao hàng
19:18 — dự kiến 19:35
4
Đã nhận hàng
Trang chủ
Menu
Đơn hàng
Tài khoản

Delivery Tracker — Accessible

Text-based status with ARIA-live updates every 2 min. No more map-only tracking.

06b · Enhancement Proposals

From functional to genuinely delightful

Six interactive proposals that add warmth, trust, and delight — each tied to a specific persona pain point. Every demo below is live. Click around.

Visual Style

"Break the Grid" Cards

Food images escape the card boundary and float upward — creating a sense of abundance. Paired with warm red-tinted shadows instead of flat grey ones. Hover the card.

Seafood Pesto

🍕
Seafood Pesto
189.000₫

Family Box

🍕
Family Box
399.000₫

Gà Giòn BBQ

🍗
Gà Giòn BBQ
129.000₫

Micro-interaction

Morphing Add-to-Cart

When tapped, the button morphs to a green checkmark — instant confirmation that the action succeeded — then reshapes into a quantity counter. Eliminates "did I tap that?" anxiety for Linh and Minh.

1

Click the button to see it morph

Micro-interaction

The "Alive" Delivery Tracker

Instead of a static progress bar, a tiny 2D scooter rolls along a road — and does a little "wheelie" when the status changes. Turns the anxious wait into something almost fun to watch.

🛵 Theo dõi đơn hàng
🛵
Đơn đã xác nhận
19:05
2
Đang chuẩn bị
3
Đang giao hàng
4
Đã nhận hàng 🎉

Micro-interaction

Allergen Safety Pulse

When Minh applies an allergen filter, safe items briefly "pulse" with a green glow while unsafe items fade. Visual safety confirmation before he even reads the labels.

Seafood Pesto
🌾 🥛 ✓ Nut
Pad Thai Pizza
🥜 Peanut 🌾
Gà Giòn BBQ
✓ Nut ✓ Dairy
Satay Chicken
🥜 Peanut

Contextual Personalisation

Weather-Responsive Hero

When the weather API says it's raining (very common in HCMC), the hero changes. "Order Now" becomes "Stuck in the rain? We've got you." Paired with a Rainy Day Bundle. Feels personal, not algorithmic.

☀️
Featured Today

Đặt ngay — giao nhanh 30 phút

Ưu đãi Mua 1 Tặng 1 chỉ qua app

Innovative Feature

Group Order Toggle

One of the biggest pain points: ordering for a group means passing the phone around. Toggle on Group Order, get a QR code or link. Everyone adds their own items on their own device. Huge win for the Family Box.

👥 Group Order
Let friends add items from their phones
Chia sẻ đơn nhóm
Bạn bè quét mã QR hoặc mở link để thêm món vào giỏ chung.
👤
Bạn
👤
Minh
+
Chờ tham gia...

Inclusive Feature

"Show Me Pictures" Mode

For Bà Thu, who struggles with jargon and Western food categories: a simplified image-heavy grid of the top 10 most popular items. No reading required. The digital version of pointing at the laminated menu at the counter.

🍕
Seafood Pesto
189.000₫
🍕
Family Box
399.000₫
🍗
Gà Giòn BBQ
129.000₫
🥗
Salad Tươi
79.000₫
Seafood Pesto Supreme
189.000₫
Family Box
399.000₫
Gà Giòn BBQ
129.000₫
Salad Tươi
79.000₫
Couple Deal
249.000₫
Garlic Bread
49.000₫

"Each of these isn't just polish — they're answers to specific user anxieties. The morphing button is for Linh's 'did I tap that?' The scooter tracker is for the whole family asking 'where's the pizza?' The visual search is Bà Thu's laminated menu, digitised."

07 · Accessibility & Usability

12 issues that were quietly costing customers

We audited the entire app and website against WCAG 2.1 AA. Every finding was prioritised by user impact — safety-critical issues (allergens, error messaging) shipped first. Here's how the design system addresses each one.

Allergen Accessibility

Previously locked in an untagged PDF. Now surfaced inline on product cards with semantic HTML and ARIA labels. Minh can check allergens without a single extra tap.

Error Feedback

Promo code failures were colour-only (red border). Now includes text message + icon + role="alert" with descriptive ARIA message. Never rely on colour alone.

Touch Targets

Cart 'Remove' was 28×28px. System minimum is now 44×44px; priority actions (add/remove) are 48×48px. Bà Thu and Linh can tap with confidence.

Delivery Tracker

Map-only tracker had no text alternative. Now includes live status text with aria-live="polite" updates every 2 minutes — reducing anxiety during the wait.

Focus Indicators

2px terracotta focus ring on all interactive elements. :focus-visible is never suppressed. Keyboard users are first-class citizens in this design system.

Contrast Ratios

Body text: 7:1+ on cream backgrounds. CTAs: 4.5:1 minimum. All checked against bright sunlight conditions — because Linh orders on her motorbike in Ho Chi Minh City.

7.2:1 ✓
4.6:1 ✓
4.8:1 ✓

08 · Design Process

How we got from problem to shipped design

This wasn't a waterfall hand-off. It was iterative, research-anchored, and every major design decision was validated against the three personas before it moved forward.

Phase 1 · Weeks 1–6
User Research & UCDC Analysis
Conducted 18 user interviews across HCMC, Hanoi, and Da Nang. Synthesised findings against the User-Centered Design Canvas. Three core user segments emerged — each with distinct accessibility dimensions and emotional stakes.
18 interviewsUCDC frameworkFigJam
Phase 2 · Weeks 7–10
Persona Development + Emotional Mapping
Built three accessibility-aware personas from research data. Mapped Minh's full ordering journey — identifying the exact moments where the experience earned or destroyed trust. These maps became the shared language with engineering.
3 personasJourney mappingEmpathy maps
Phase 3 · Weeks 11–16
WCAG 2.1 Accessibility Audit
Full audit of app and website against WCAG 2.1 AA criteria. Prioritised 12 findings by user impact — safety-critical issues (allergens, error messaging) fixed first. Built the foundational design tokens and accessibility requirements that would shape the entire system.
12 findingsWCAG 2.1 AAaxe DevTools
Phase 4 · Weeks 17–36
Design System + Prototyping
Built the component library in Figma with auto-layout, design tokens, and variant states. Rapid wireframes validated with engineering and marketing partners. Usability testing with 12 participants through Maze (unmoderated) and Hotjar (session recordings). Three iteration cycles before final handoff.
FigmaMazeHotjar3 iteration cycles
Phase 5 · Weeks 37–52+
Personalisation + Continuous Optimisation
Implemented the recommendation engine tailored to user history and persona segment. Optimised button placement, image selection, and promo code UX. Monitored analytics and iterated continuously based on real-world feedback. The 15% sales lift arrived around week 48.
+15% sales96% CSAT maintainedA/B testing

09 · Design Decisions

Why we made the calls we made

A design decision log — the "why" behind the system, so developers, stakeholders, and future teammates don't have to reverse-engineer intent.

Decision Rationale Human Impact
Inline allergen badges on product cards Previously buried in an untagged PDF 3 taps deep. Surfacing inline removes an unsafe access barrier and reduces cognitive load. Minh no longer has to hunt for safety-critical info while tired after work. His family stays safe, and he trusts the brand enough to come back.
Warm cream canvas (#FAF8F5) over pure white Pure white on mobile screens in bright sunlight creates harsh glare. Warm cream reduces eye strain while maintaining high contrast ratios (7.2:1 with charcoal text). Bà Thu can browse comfortably on her phone. Linh can read menus in direct sunlight on her motorbike without squinting.
48px minimum touch targets on cart actions WCAG requires 44px, but field testing showed users with motor limitations (Bà Thu) and distracted users (Linh mid-commute) needed more margin for error. No more accidental deletions. No more "I can't tap the right thing." Confidence instead of frustration.
Text-based delivery tracker with ARIA-live The map-only tracker failed screen reader users entirely and created anxiety for sighted users when the map froze. A text fallback with timed updates solves both. Minh's kids stop asking "where's the pizza?" because the app tells them clearly. Visually impaired users get status for the first time.
Error messages: text + icon + ARIA role="alert" Colour-only error states (red border on promo code field) were invisible to users with colour vision deficiencies and missed by distracted users. When Linh's promo code fails, she knows exactly why and what to do — not just that something turned red somewhere.
DM Serif Display + DM Sans type pairing Serif headings create warmth and editorial trust. Sans body provides clean legibility. Both typefaces have excellent Vietnamese diacritical support — critical for Bà Thu. The typography feels welcoming and premium at the same time. Bà Thu reads comfortably in Vietnamese. Linh sees a brand that looks modern and worth sharing.
✦ Red-tinted shadows on CTA cards Grey shadows on warm cream surfaces create a "dirty" appearance. Red-tinted shadows create a warm glow that feels cohesive with the brand palette and reinforces depth without visual conflict. Product cards feel appetising and alive. The food looks like it's glowing, not just sitting on a surface. Particularly effective for Linh's "shareable food" motivation.
✦ Break-the-grid product images Constrained images inside rigid boxes make food look flat. Overflowing the card boundary creates a sense of abundance and breaks the grid just enough to be interesting without being chaotic. Linh is more likely to screenshot and share. Bà Thu's eye is drawn to the visual first — reducing reliance on text-based navigation.

"Accessibility isn't a compliance checklist — it's a design quality indicator. Every accessibility failure we found was also a UX failure for someone."

10 · Launch Timeline & Governance

Scaling the system with clear ownership

The design system is a living product — not a one-time deliverable. Here's the 6-month roadmap for rollout, with Figma as the single source of truth and a lightweight governance process to keep things moving.

M1
M2
M3
M4
M5
M6
Foundation Tokens
Figma + Code
Core Components
Build + Test
Accessibility Fixes
Audit → Ship
App Integration
Migrate + QA
User Testing
Maze + Hotjar
Personalisation
AI Recs Engine

Governance & Scalability

The system stays healthy because it has clear ownership, fast feedback loops, and usage-driven development. Every component has an owner. Changes are reflected in products within hours, not weeks.

Figma as Source of Truth

All design tokens, components, and patterns live in a shared Figma library with auto-layout and variant states. Developers reference Figma specs directly — no ambiguity.

Component Ownership

Every component has a named owner who can make decisions quickly. Contribution process is lightweight: propose → review → merge. Public changelog so teams trust updates.

Design Tools & Platforms

Figma (design + handoff) · FigJam (workshops) · Maze (unmoderated testing) · Hotjar (session recordings) · axe DevTools (accessibility auditing) · Storybook (component docs for developers).

Progressive Adoption

Teams adopt the system gradually without breaking existing products. New screens use system components; legacy screens migrate on a priority queue based on traffic and user impact.

Reflection

What this project taught me

"The moment you start designing for Bà Thu's vision needs or Minh's allergen anxiety, you make the experience better for everyone. That's not a nice-to-have. That's a core design principle."

The 15% sales lift was the headline number — but the work that mattered most was making the experience genuinely inclusive. Making sure Bà Thu felt welcome. Making sure Minh could trust the allergen info. Making sure Linh could recover from a mis-tap without losing her mind.

If I were doing it again, I'd push for richer longitudinal research from the start — particularly around how the experience of delivery anxiety (the wait) could be genuinely redesigned, not just tracked.