WeChat QR Code

Scan to add me on WeChat

Humain

AI-Powered Outdoor Space Behavioural Analytics Platform

Humain Cover
OVERVIEW

Humain is a national-level AI company under Saudi Arabia's sovereign wealth fund PIF. Monitor is its core product — it transforms crowd behaviour in physical spaces into real-time, actionable operational insights through cameras and AI models, serving retail, commercial real estate, and large event venue operators.

As Lead UX Designer, I led the product's information architecture over 6 months, built a tokenised design system from scratch (Shadcn + Tailwind CSS), and delivered 256+ full-state UI screens with developer handoff. The MVP launched on schedule in September 2025.

Client Humain (PIF)
Timeline Jun – Nov 2025
Scope B2B SaaS | Data Visualisation | Design System
Location Riyadh, Saudi Arabia
CONTEXT

A national-level AI company's first spatial intelligence product — building a design system from scratch

What is HUMAIN

Humain is a national-level AI company founded in 2025 under Saudi Arabia's sovereign wealth fund PIF, directly championed by Crown Prince Mohammed bin Salman to drive AI infrastructure and industry adoption under Vision 2030. With mega-projects like NEOM, Red Sea, Qiddiya, and Riyadh Season accelerating demand, intelligent management of public spaces has become a critical need — the crowd analytics market is projected to grow from $912M to $5.7B by 2030.

Product Ecosystem

Humain already had a sister product, Motion, focused on traffic analytics. Monitor was now needed to extend AI capabilities into crowd behaviour — delivering real-time behavioural insights for retail, commercial real estate, and large event venues. Both products share a common design language but serve fundamentally different data domains and interaction contexts.

Sister Product

Motion

Traffic scene AI analysis — vehicle recognition, licence plate detection, congestion alerts

This Project

Monitor

Real-time crowd behaviour analysis — footfall density, dwell engagement, journey tracking

Design Challenge

Monitor wasn't an iteration on an existing system. The team needed to fully migrate from the legacy SCAI interface to the new HUMAIN brand system, building a tokenised design system from scratch without slowing delivery. Joining as Lead UX Designer, I had 6 months to simultaneously define the information architecture, build a cross-product design system, and deliver complete full-state UI coverage.

Information Architecture

Define product module hierarchy, navigation structure and task flows

Design System

Build token system from scratch, aligned to Tailwind, reusable across products

Full-State UI

256+ screens covering resting, loading, error, and empty states

RESEARCH

Early Research

Given the tight delivery timeline, we ran research in parallel across multiple streams: aligning with product and industry analysts on existing findings, conducting competitive analysis across Quividi, AdMobilize and peers, auditing the existing Motion platform design to identify reusable patterns, and working with the AI engineering team to understand the practical output capabilities and constraints of Engagement Mode and environment rendering models.

Competitive Landscape

Competitive analysis across FootfallCam, RetailNext, and Quividi revealed that most tools achieve effective recording but lack interpretive capability — there is no active intelligence layer. Based on this gap, we established three competitive differentiators for Monitor Phase 2: AI-powered intelligence, multi-vertical architecture, and environment-aware automation.

Competitive Landscape Analysis

Key Differentiators

Smart Alert System

Not just data display — automatically triggers alerts based on thresholds and anomaly patterns, enabling real-time operational response rather than post-hoc review.

Environment-Adaptive Architecture

From indoor retail to large event venues, supports data capture and analysis across different resolutions, angles and behaviour types.

Cross-Vertical Reusability

Components and data models are not bound to a specific vertical, enabling rapid replication and deployment to new use cases.

VALUE PROPOSITION

Through the landscape analysis, we mapped Monitor's product positioning across five dimensions: users, problems, solutions, competitors, and differentiators.

Humain Monitor Value Proposition
MVP DEFINITION

Defining the MVP Boundary

Together with the team, I used information architecture to map the full product, and User Stories to decompose the tasks and priorities each page needed to carry — ensuring every MVP design decision had a clear rationale, not just instinct.

MVP Product Scenarios

The full product spans 8 functional domains. The MVP focuses on the core journey to validate product value before expanding.

MVP

Real-Time Footfall Monitoring

  • Real-time visitor count
  • Crowd pattern dashboard
  • Camera heatmap view
  • Historical trend analysis
  • Filterable heat insights
MVP

Queue & Wait Optimisation

  • Queue length detection
  • Wait time detection
  • Capacity threshold alerts
  • Congestion bottleneck ID
MVP

Crowd Profiling

  • Gender classification
  • Age group classification
  • Dwell time analysis
  • Engagement duration
MVP

Journey & Access Management

  • Customer journey mapping
  • User role management
  • Multi-site access control
Partial

Behaviour & Sentiment Analysis

  • Sentiment detection dashboard
  • Satisfaction prediction
  • Group / individual behaviour
Partial

Visitor Identity Recognition

  • Face recognition (Opt-in)
  • VIP / returning visitor tag
Later

Personalised Marketing Engine

  • Real-time behaviour recommendation
  • Journey path suggestions
  • Dynamic content delivery
Later

Smart Workforce Optimisation

  • Staff monitoring
  • AI scheduling suggestions
  • Productivity analytics
MVP Full Coverage MVP Partial Coverage Later Iteration

Information Architecture

Based on functional modules and user task flows, we mapped the full information architecture of the Monitor platform — covering core modules including Dashboard, Reports, and Asset Management — and defined the boundary between the MVP scope and Phase 2 expansion.

Humain Monitor Information Architecture

USER STORIES

Based on product requirements provided by the PM, we decomposed each User Story into three layers — user journey, scenarios, and acceptance criteria — to ensure design direction and development delivery were fully aligned.

USER JOURNEY

Break each Story into a user journey — mapping the steps a user takes and clarifying where they come from and where they need to go

SCENARIOS

Map the primary flow and edge cases, covering normal usage, error states, and empty data scenarios

QUESTIONS

Capture open questions for PM clarification as they surface during decomposition, keeping requirements unambiguous

ACCEPTANCE CRITERIA

Define the completion standard for each Story, serving as the reference for design QA and developer handoff

User Stories Document
DESIGN

Design & Iteration

Once the MVP scope was set, the real challenge shifted from "what to build" to "how to build the right thing under constantly evolving requirements." This chapter documents the first version of the Humain Monitor Dashboard, and the progressive refinements made through cross-functional collaboration, right through to the final polish before handoff.

INITIAL CONCEPT

We started from the core question: "what does an operator need to know about what happened today?" This framed the first-pass Dashboard skeleton — structured in three vertical layers: KPI cards at the top for at-a-glance metrics, a 3D Zone Viewer in the middle for spatial density context, and a multi-dimensional data comparison view at the bottom, enabling a quick top-to-bottom scan for full situational awareness.

01

KPI + Global Controls

The top strip carries the most critical real-time indicators: visitor count, occupancy rate, average dwell time, VIP count, and system health status.

02

Viewers

The middle band holds two core entry points. Live Viewer renders real-time crowd density with 2D silhouettes, while Camera Viewer overlays AI detection frames onto the camera view.

03

Statistical Analysis

The bottom section aggregates footfall, dwell time, age and gender distribution, and queue status, providing trend playback and comparison for operational decisions.

Humain Monitor Dashboard

CHALLENGE 01 — PRIVACY CONSTRAINT

Privacy Constraint

The most direct solution in the first concept was to show live footage in the Camera Viewer, but this was also the biggest compliance risk. We needed to preserve the informational value of "seeing the space" without exposing real camera feeds. This became the hardest design constraint of the entire MVP phase.

Privacy Constraint

How might we communicate presence and movement for operational decisions without live camera footage?

EXPLORATION

Around this problem, I quickly explored four visualization directions. Each mapped to a different abstraction level and real-time requirement, then we evaluated them across compliance risk, technical feasibility, and information density.

Silhouette-based rendering

Use silhouettes instead of real human imagery, preserving posture, position, and movement direction while stripping away face and identity cues. Visually, it stayed closest to the original scene.

Frame-by-frame processing put too much pressure on edge compute and bandwidth, so it could not be stabilized for the MVP launch.

Point-based rendering

Simplify every detected person into a glowing point in 3D space. Operators can read crowd dynamics with minimal visual elements.

The MVP could not guarantee stable calibration and tracking across multiple cameras; points would drift and jump.

Live heatmap updates

Overlay a live-updating heatmap onto the 3D scene so crowd density can be judged directly in spatial context.

The MVP data pipeline only produced processed density results over time windows, so it could not support a continuously flowing heat surface.

Aggregated density for a time window

Project density data from a time window onto a static grey 3D scene as soft color blocks, with hover cards showing visitor count and peak time for that zone and period.

This matched the privacy-by-design approach and the existing batch + time window data pipeline, making it the most reasonable MVP tradeoff.

Silhouette-based rendering exploration

SOLUTION

The final solution is a privacy-safe 3D Zone Viewer that separates the two information layers of "space" and "behaviour". It preserves the compliance baseline, matches what the MVP engineering pipeline can realistically deliver, and leaves a clear upgrade path for the next scope.

Aggregated density for a time window solution
Aggregated density for a time window

MVP solution. Grey 3D scene + time-window aggregated density, with no live footage, no faces, and no individual traces.

Future version solution
Future Version

Next-stage solution. Real footage with face blurring, plus age and gender labels to balance privacy compliance with scene readability.

CHALLENGE 02 — PRIORITY SHIFT

Priority Shift

The MVP refocused around a single outdoor advertising operator. Every viewer and data visualization needed to be reprioritized around decisions about ad placement performance.

Priority Shift dashboard

From Indoor Monitoring to Outdoor Advertising

The viewer moved from an indoor 2D layered scene to an outdoor 3D Zone Viewer. KPIs were simplified around average dwell and peak time windows. Journeys introduced a Sankey view for cross-zone movement, while Age Group Distribution moved into the primary view to support decisions across ad placement, audience, and time period.

After outdoor advertising dashboard After
Before priority shift dashboard Before
MVP

MVP Design Solution

A dashboard for outdoor advertising operators that turns raw camera signals into metrics directly usable for ad placement pricing and campaign decisions. The screen is structured into three layers: top KPIs, two viewers, and Statistical Analysis below, covering the full chain from on-site sensing to performance attribution while keeping every component in the same filter context.

DASHBOARD

Humain dashboard overview
1
Component Header

Each component uses a consistent top-left header made of the component name and one line of context, making the time window and zone scope clear.

2
Filter Controls

Viewer and Statistical Analysis have independent filters that control their own data scope, allowing cross-comparison within the same screen.

3
Hover Tooltip

Every interactive element shows a tooltip on hover, using the same key-value structure while adapting content to each component type.

4
Legend

Live Viewer includes a collapsible legend that explains icon semantics and color gradients. It can collapse into one title row and expand on click.

Viewer Metric Switching

Live Viewer and 3D Zone Viewer share the same behavior and demographic dimensions. When users select a metric on the left, both viewers switch to the corresponding visualization state at the same time, keeping the side-by-side comparison context aligned.

BEHAVIOR

DEMOGRAPHIC

Live Viewer visitor count tracking
Live Viewer
3D Zone Viewer visitor count tracking
3D Zone Viewer

STATISTICAL ANALYSIS Visualizations

The five components form the full decision chain for outdoor advertising: audience mix, sentiment feedback, time-period distribution, dwell quality, and cross-zone movement. Each component supports both All Zones comparison and Single Zone drilldown, carrying two analysis perspectives in one model.

Engaged Sentiment chart interaction

Each zone is represented as a card, with the pill bar filled by four engagement levels.

Interaction In Global Selector All Zones view, each zone is represented as a card and the pill bar is filled by four sentiment ratios. Hover opens details; switching to a single zone replaces it with a treemap where area directly shows sentiment share.

Crowd Volume chart interaction

Shows crowd volume curves for the selected time range, with the Total line supported by gender and age-group lines.

Interaction Hovering over the curve syncs a vertical guideline across all line values, and the green cursor can be dragged. The Behavior dropdown in the top right switches to Dwell Time mode.

Dwell Time Distribution by Zone chart interaction

In All Zones view, each bar is stacked by dwell-time range.

Interaction Hover reveals segment details, supporting cross-zone comparison of deep dwell. Switching to a single zone replaces the chart with a treemap and adds the Avg. Dwell Time metric at the top.

Journeys Sankey chart interaction

The Sankey diagram shows the complete cross-zone movement path, with band width representing visitor count.

Interaction Hover highlights a single path and shows its share. Switching to a single zone redraws the flow from that zone as the starting point.

Demographic and Age Group Distribution chart interaction

The Demographic component uses donut charts to show the audience mix for Age Group / Gender.

Interaction It supports both All Zones distribution and Single Zone drilldown. Hover shows exact visitor counts and share, helping operators judge whether the current audience matches the advertising target.

DESIGN SYSTEM

Rebuilding a Design Language for Humain

As the brand moved from Scai to Humain and engineering migrated to Tailwind, the old component library could no longer be reused in naming, structure, or implementation. I started by auditing the legacy system, then redefined the token architecture, foundational components, and documentation standards so design and engineering could work from the same language.

AUDIT & PREPARATION

The first step was to clarify the gap between the old system and the new inputs. I audited the legacy SCAI component library by usage frequency, visual consistency, and token binding, identifying what could be reused and what needed to be replaced. At the same time, I received the Humain brand guideline, which became the starting point for the new design system's color, typography, and brand expression.

Scai component audit and Humain brand guideline preparation

Tailwind Alignment

After engineering decided to migrate to Tailwind, its technical framework directly constrained the design-side decision space. Before designing, I clarified those constraints and aligned with frontend across three layers: tokens, layout, and components, so every subsequent design decision stayed within the same boundary.

TOKEN LAYER

Figma variables fully aligned with Tailwind config

The structure followed tailwind.config.js. Spacing used the 4px baseline, while colors were abstracted into semantic tokens and mapped back to the Tailwind palette scale.

LAYOUT LAYER

Using Tailwind's default breakpoints

The system used sm, md, lg, xl, 2xl, container widths, max-width, and gap values aligned to Tailwind's default scale.

COMPONENT LAYER

Tailwind's utility-first model

Only properties that affected both structure and accessibility became props; variant, size, and disabled states stayed inside the component.

FOUNDATIONS

Foundations are the base layer of the system, and every component pulls values from here. I organized them into Color, Typography, Spacing, and Radius, with tokens at the center of each group. Tokens are split into Primitive and Semantic layers: components only reference semantic tokens, so theme switching only requires changing the middle mapping layer.

Humain color palette foundations
Humain typography foundations

Variable Mapping

The variable grouping structure directly mirrors tailwind.config.js, so design and code share the same naming system.

Humain Figma variables setup

COMPONENTS & MODULES

After the Foundations were defined, I started by building atomic components. Each component was expanded by variant and state. Once the components were stable, I began assembling them into Modules. Data visualization modules were the focus; each one covered Default, Loading, and Error states. Other page-level modules were packaged separately according to their own business scenarios.

Humain component and style kit

DOCUMENTATION

Each component in Figma includes usage documentation covering use cases, available props, state descriptions, and do/don't examples.

Humain component documentation

STORYBOOK

The code implementation of each component is hosted in Storybook, where developers can inspect how each variant and state renders, adjust parameters, and reference the props API. Figma documentation and Storybook link to each other, giving design and engineering the same source of truth.

Humain Storybook handoff
RESULTS

Results

As the only designer on the team, I owned the end-to-end Humain Monitor design process, from competitive research and information architecture to building the design system and delivering production-ready screens. The product entered the commercialization phase on schedule. The design system was built from scratch on Shadcn + Tailwind; its three-layer token architecture aligned Figma variables one-to-one with tailwind.config.js, removing the need for design-to-development translation, and Storybook provided interactive component documentation.

The most direct impact: during commercialization for the Saudi Vision 2030 market, the product helped the team secure its first commercial contract with a leading Saudi outdoor advertising operator, covering deployment across multiple large commercial complexes in Riyadh. This validated our product strategy of positioning "actionable AI insight" rather than "passive data display" as the core differentiator.

REFLECTION

The biggest process learning from this project was establishing a dual-track collaboration model where design stayed one sprint ahead. That rhythm forced me to deliver solutions and User Stories before each iteration, and to distinguish between what had to be decided now and what could be optimized in the next cycle, instead of trying to make everything perfect at once.

Tailwind initially felt like an engineering constraint, but later became a design method. To stay aligned with code, I mirrored the Figma variables structure from tailwind.config.js and worked with the frontend lead field by field to decide what should keep the default, what should be extended, and what should be replaced. That process made me realize that a design system's maintainability does not depend on how polished it looks, but on how close it sits to engineering.

If I did it again, I would bring lightweight prototype testing into the IA stage and involve real users such as venue operations managers and security leads, instead of relying only on internal team reasoning. I would also reserve Dark Mode and Accessibility extension capacity earlier at the token layer, so the system had those foundations from the beginning rather than treating them as post-launch fixes.

Next Project

Discy.ai

Discy.ai
Jiajing Zhang's Portfolio 2023 - 2026 Open to next role

Have a nice project?

© 2026 Jiajing Zhang. All rights reserved.

Hi, my name is . You can answer me on this email . I am looking for help with a .