Woven City — aerial view

Woven by Toyota · 2023 – Present

Weaving the future
of a city

Woven City is an experimental smart city in Susono, Shizuoka, built by Toyota as a real-world environment for testing what the future feels like.

Details

Toyota — Woven by Toyota company
UX / UI Designer, Cross-platform role
End-to-end UX, design systems, multi-role access, accessibility, payments scope

0 years

to build a city

0

initial residents

0

planned residents

The product is driven by a cross-functional team of product managers, engineers, designers, researchers, and writers. This collaboration influenced key aspects of our design process.

End-to-end UX

UX across the entire product lifecycle — problem framing, research, flows, prototyping, validation, and developer handoff. Focused on clarity and measurable outcomes.

Design system

Designing within (and actively improving) a large-scale design system — refining components, interaction patterns, and documentation to keep the product consistent and scalable.

Kaizen culture

Finding friction points and turning them into incremental, measurable improvements. Prioritizing step-by-step iteration over big rewrites, so quality compounds over time.

Multi-platform

Cohesive experiences across web, mobile, enterprise platforms, and connected devices (React, Flutter, ServiceNow) — including AI and Slack-integrated workflows.

Since 2023 I have been working at Woven City on many complex product initiatives. Some of my responsibilities have included:

01Define product behavior, not only UI

02Cover edge cases, error states and empty states

03Contribute to PRDs and point out missing logic

04Help product managers compare product options

05Discuss limitations and implementation options directly with engineers

06Protect important UX decisions when simplification would damage the experience

07Find missing product logic

08Check technical feasibility early

09Balance UX, cost, and implementation effort

10Turn complex permissions into clear flows

11Create realistic working prototypes

12Prototype before development

13Use code to test interaction ideas

14Build reusable patterns and components

15Define design-system states and exceptions

16Work across web and mobile

17Prepare prototypes for user research

18Help researchers define what to test

19Turn findings into product changes

20Design bilingual product experiences

21Check accessibility behavior

22Design CRM and enterprise workflows

23Learn and reuse technical libraries

24And more

Woven City App

One app, one city, designed for the people who live, work, and create together.

Send messages Make payments Read news Check balance Onboard Woven City mobile experience

Woven City App — the official city platform, connecting residents and inventors to events, projects, and each other.

App features Everyday city essentials

Access to latest information. Stay up-to-date with real-time news and notifications from around the city.

Connect through events & projects. Discover a space where weavers and inventors meet — online and in person — to build the future of the city together.

Everyday life in one place. One app for payments, household services, and support from the city team.

Problem Core product gaps

The app had no complete in-city payment flow, no native chat for resident-to-team communication, no established account management page, unresolved accessibility issues across key journeys, and no dedicated web/power-user experience for higher-frequency workflows.

Result Measurable gains

We improved trust-critical flows, with top-up completion rising from 75% to 90%, payment support tickets dropping by roughly one third, and 26 of 40 accessibility issues resolved across key journeys.

Some examples of my design flows

Feature

Payment & Transfer

Challenge: Designing a high-trust money transfer flow under strict security, system, and real-world constraints.

What was my role

Redesigned how payments are structured and used, improving card, balance, and transaction history views while introducing new send and top-up flows. Defined the end-to-end experience, including system states, edge cases, and error handling, in close collaboration with engineering and payments teams.

01

Initiation

Send flow

02

Authentication

Biometric confirmation

03

System feedback

Push notifications

04

Post-transaction visibility

Payment details

In finance-related flows, small interaction details have a big impact on how confident people feel.

I focused on a few simple principles that make it easier to see what’s happening, recover from mistakes, and trust that every change to the balance is intentional.

Transparency

Explicitly surfaced who you’re sending to, from which balance, and the exact amount in a single, high-contrast summary screen.

Predictable Errors

Defined UX for insufficient balance, network timeouts, duplicated taps, and server-side validation errors.

Post-action Trust Building

After a successful transfer, both sender and receiver see a consistent pattern: updated balance, a confirmation state, and a history entry so they can verify what happened later.

Progressive Disclosure

Users first pick the recipient and amount, then see a clear “final check” state before committing.

Edge-case Support

Worked with engineers to keep failure messages specific and actionable: “Your balance is now X; you need at least Y” instead of “Something went wrong.”

Immediate Feedback

Real-time balance updates help users connect their action with the exact change, reducing uncertainty about whether the transaction went through.

Microinteractions can make financial flows feel more empathetic.

By animating the numbers changing, we gave clear visual confirmation of the action. It reduces stress by removing doubt and showing right away that the money was added, making the app feel more responsive and humane.

Results

After the redesign, we saw top-up completion rise from about 75% to just under 90%, and the typical time to finish a top-up dropped from a little under 40 seconds to around 25 seconds. Payment-related support tickets about top-ups went down by roughly a third, which matched what we heard in feedback sessions: people described the new flow as “safer,” “more predictable,” and said it was easier to see exactly what was happening to their balance at each step.

System

Multi-role access

Woven City App multi-role access screens

Challenge

One app, one city — but very different people need to see and do different things.

The challenge was to design a single interaction model where different groups could share the same features, while seeing role-appropriate information and actions that still felt like one coherent product.

What was my role

I designed the interaction model for role-based access in the Woven City App. I focused on how user roles affect the core city surfaces — news feed, projects, events, and communication — and translated high-level policy and operational requirements into consistent UI behavior.

Map capabilities

Defined what each role could see and do across shared product surfaces.

Define visibility

Created consistent patterns for targeted content, conversations, and notifications.

Align the system

Worked with product, engineering, and city teams to turn policy into predictable behavior.

Design to scale

Built a model that could absorb new users, roles, and features without fragmenting the app.

Results

Within two quarters, the multi-role access model was in daily use across city communication. Visibility, chats, and targeted notifications all relied on the same access patterns. Stakeholders said messages were “reaching the right people” without feeling spammy, and engagement grew without splitting the Woven City App into separate products.

Feature

Chats

Challenge: Creating a reliable chat experience in the Woven City App that seamlessly integrates private conversations with Official Account interactions.

The goal was to ensure users could easily grasp their current context, compose and send messages, navigate various conversation types, and recover smoothly when things didn’t go as planned.

What was my role

Contributed to the zero-to-one design and refinement of mobile chat in close collaboration with Product, Engineering, UX Research, and QA.

I worked across conversation structure, Official Account chat, message composition, sending feedback, loading behavior, error recovery, and conversation continuity.

01

Conversation initiation

Opening a chat and understanding the conversation context, including the distinction between private conversations and Official Account chats.

02

Message composition

Entering text and preparing messages within the chat experience.

03

Sending and system feedback

Defining clear feedback for sending, loading, failed actions, and retry behavior.

04

Conversation continuity

Keeping rooms and message history understandable when users returned to a conversation or when content was still loading.

In chat experiences, small interaction details have a major impact on whether communication feels reliable.

I focused on making it clear which conversation the user was in, what action had taken place, and what they could do next.

Clear conversation context

Helped distinguish private conversations from Official Account chats, giving each type a clearer place within the overall chat experience.

Predictable interaction states

Defined behavior for loading, sending, failed actions, delayed responses, repeated taps, and unavailable services.

Official Account chat

Supported a dedicated conversation experience for Official Accounts, allowing users to interact with organizations or services through the same familiar chat environment while maintaining a clear distinction from private conversations.

Conversation continuity

Refined room and message behavior so users could return to ongoing conversations without losing context, especially when content was loading or the system was recovering from an issue.

Consistent interaction patterns

Created reusable patterns for composing, sending, receiving feedback, and recovering from errors across different chat contexts.

Edge-case support

Worked with engineers to identify less common scenarios, including interrupted requests, duplicate actions, delayed responses, and messages that could not be sent.

Results

The work helped establish a clearer mobile chat foundation for the Woven City App, supporting both private conversations and Official Account interactions.

It introduced more consistent patterns for conversation context, message composition, sending feedback, loading, and failure recovery. The resulting experience made chat easier to understand while providing a foundation that could support additional conversation types and future product development.

System

Accessibility

VoiceOver accessibility audit detail

Challenge

As the product grew, accessibility decisions were made incrementally across different features. Over time, this led to unclear labels, uneven reading order, and interactions that did not always behave predictably for screen reader users. Core flows worked visually, but for VoiceOver users they could feel noisy, repetitive, or hard to navigate.

What was my role

I contributed to the UX side of an accessibility pass, working closely with accessibility specialists and engineers. Together, we reviewed a 40-issue audit, aligned priorities around real user impact, and translated the findings into concrete design decisions.

Naming and labels

Clarified controls and actions through consistent, intent-based language.

Reading order

Reworked screen structure so content follows a logical sequence.

Screen reader flows

Simplified interactions and removed repetitive, low-value announcements.

Visual access

Applied targeted contrast, focus, and hit-target improvements.

Approach

Real user feedback exposed recurring problems: missing labels, repetitive navigation, disrupted reading flow, and poorly described critical actions. Reviewing ARIA usage alongside industry data shifted our approach toward simpler, more dependable foundations.

Simplify, don’t patch

Use less ARIA and more native semantics.

Structure over narration

Use clear grouping, logical order, and meaningful headings.

Clarity at the source

Create intent-based labels and remove redundant announcements.

Targeted visual fixes

Improve contrast, focus visibility, and hit-target sizes where needed.

Results

26 of 40 issues resolved, with three in progress. Nine remaining issues were documented with constraints and future directions, including user-generated alt text. Home, Projects, and Chat now have clearer labeling, better navigation for screen readers, and more stable interaction patterns. Accessibility is no longer treated as a final check; it is part of how features are designed and built from the start.

Beyond the app

Over the past years I've also been designing other core products beyond the resident app — tools that enable city operations at scale.

Due to NDA restrictions I'm unable to share detailed project information, screenshots, or design artifacts. But recent work has included:

01B2B / enterprise SaaS design

02ServiceNow product & interaction design

03AI conversational interfaces

04Custom illustrations & visual storytelling

05Working with large design systems

06UI guidelines & standards

07Information architecture

08Cross-functional workshop facilitation

Research

At Woven by Toyota, research plays a huge role — most features go through some form of validation before they ship.

As a designer, I worked closely with researchers throughout the process—helping define research goals, preparing studies, and participating in interviews and usability sessions where appropriate. Together, we combined insights from those sessions with product data to better understand both user behavior and intent.

01Usability testing

02UI evaluation

03Scenario testing

04In-depth interviews

05Accessibility testing

Back to Projects