Enter password to view case study

DESIGN SYSTEMS・2025

Building a scalable design system to support product growth at Nearville

Design Systems Lead

5 months

Marketplace

Mobile

0β†’1

DESIGN SYSTEMS・2025

Building a scalable design system to support product growth at Nearville

Design Systems Lead

5 months

Marketplace

Mobile

0β†’1

overview

A scalable design system built to support a 0β†’1, evolving & growing marketplace.

I led the design and implementation of Nearville’s design system from 0β†’1, establishing a scalable foundation to support rapid product development across a growing marketplace platform.

DESIGN DUPLICATION

DESIGN DUPLICATION

DESIGN DUPLICATION

40 %

in duplicated design work through reusable components and standardized patterns.

DESIGN EFFICIENCY

DESIGN EFFICIENCY

60 %

faster design workflows enabled by component reuse and clearer system structure.

SYSTEM ADOPTION

SYSTEM ADOPTION

50 %

of features built and implemented by engineers in 1st month using design system components.

DEV. SPEED

DEV. SPEED

DEV. SPEED

2 x

build cycles enabled by clear documentation and tighter integration between design (Figma MCP).

PROBLEM SPACE

Speed created fragmentation

The mobility system supported a private community of ~300 people, helping them move between locations throughout the day. But behind the scenes, it relied on fragmented tools and manual coordination.

Pre-MVP

Pre-MVP

Optimizing velocity

Optimizing velocity

3 designers working in parallel

4-6 months of rapid iteration and experimentation

Components pulled from existing systems without standardization

Pre-MVP

Pre-MVP

UX gaps surfaced

UX gaps surfaced

Inconsistent design patterns across similar features

Design/dev handoff required more interpretation

Increased back-and-forth and rework

BUSINESS IMPLICATIONS

BUSINESS IMPLICATIONS

As a result, the team began to lose momentum at a critical stage:

  • Slower, less predictable build cycles

  • Limited trust in a newly launched product due to inconsistent experiences

  • Design unable to support long-term product growth

At a stage where momentum is critical to product reliability and growth, this fragmentation became a bottleneck.

DISCOVERY

Auditing inconsistencies across the product

I audited existing product flows to understand how inconsistencies formedβ€”identifying where patterns diverged, where duplication occurred, and how this impacted both user experience and team workflows.

AUDIT

A bird’s-eye view to identify inconsistencies across use cases

By zooming out to review the product end to end and zooming in on interaction and UI details, I identified where similar use cases were treated inconsistently and where gaps existed across the user experience.

By zooming out to review the product end to end and zooming in on interaction and UI details, I identified where similar use cases were treated inconsistently and where gaps existed across the user experience.

Key inconsistencies spotted

Visual inconsistency

Visual inconsistency

Behavioral inconsistency

Behavioral inconsistency

Lack of guidance

Lack of guidance

USER PROBLEM

How might we bring consistency to the product while maintaining the speed needed to iterate and validate quickly?

GOAL #1

Establish consistency from foundations

GOAL #2

Maintain velocity during rapid design iterations

GOAL #3

Reduce engineering friction in implementation

USER PROBLEM

How might we bring consistency to the product while maintaining the speed needed to iterate and validate quickly?

GOAL #1

Establish consistency from foundations

GOAL #2

Maintain velocity during rapid design iterations

GOAL #3

Reduce engineering friction in implementation

USER PROBLEM

How might we bring consistency to the product while maintaining the speed needed to iterate and validate quickly?

GOAL #1

Establish consistency from foundations

GOAL #2

Maintain velocity during rapid design iterations

GOAL #3

Reduce engineering friction in implementation

PROCESS

Building the system through continuous iteration

The system was developed through tight loops of building, feedback, and iterationβ€”while product exploration and brand updates were happening in parallel. Each decision was shaped by real usage, not predefined assumptions.

Atomic Design

By adopting an atomic approach, I defined a strong foundation while allowing the team to continue exploring more complex patterns in parallel.

By adopting an atomic approach, I defined a strong foundation while allowing the team to continue exploring more complex patterns in parallel.

Iterations in practice

Each iteration looped in designer and engineer feedback, validating real usage while considering scalability, helping the system become more practical and aligned over time.

Typography

Redefined after identifying inconsistent usage across experiences, reclassifying styles and simplifying the system based on real usage.

Buttons

Initially expanded to a complex set to support design explorations but later refined to a simpler version that strongly aligns with new product direction.

Original

450 Variants

New

180 Variants

KEY DECISIONS

Not every component needed the same level of structure

As the system matured, the goal wasn’t to standardize everything equally. Some components needed stricter rules to protect accuracy and trust, while others needed more flexibility to support rapid iteration.

I focused on introducing structure where inconsistency created the most risk, while leaving room for exploration in lower-risk areas.

Here’s a framework I used to evaluate where to introduce structure vs. flexibility.

Risk refers to the impact on transactions and user trust. Frequency refers to how often a component is used across the product.

Risk refers to the impact on transactions and user trust. Frequency refers to how often a component is used across the product.

A

Low frequency, high risk

e.g. cancellation, policies

Fixed copy to ensure accuracy and compliance

Structured variants (e.g. policy types) instead of custom inputs

B

High frequency, high risk

e.g. payment-related

Locked structure and labels to ensure consistency and trust

Configurable $ values within predefined fields

Toggleable line items to support different pricing scenarios

C

Low frequency, low risk

e.g. pop-up messages

Toggleable line items to support different pricing scenarios

Editable label, description, and button text

Minimal constraints to avoid over-systemizing early

D

High frequency, low risk

e.g. navigation bar

Standardized structure for consistency across screens

Configurable states (default, active, unread indicators)

Support for variations (icon, label, badge types)

FINAL DELIVERY

A scalable system built for consistency and speed

Design System

A living system consisting of 500+ components and variants

The system evolved into a robust foundation, enabling consistent experiences and supporting ongoing product development.

Documentation

Helping designers design with ease and engineers build with confidence

Defining component anatomy and use cases

Clear documentation on when and how components should be used, including edge cases to reduce ambiguity.

Clear documentation on when and how components should be used, including edge cases to reduce ambiguity.

Radius

Radio Button

Establishing intuitive naming conventions

Consistent and descriptive naming to ensure variables and components are easy to find, understand, and implement.

Consistent and descriptive naming to ensure variables and components are easy to find, understand, and implement.

Color

Tags

Providing usage examples, dos/don'ts

Examples to help designers and engineers apply components correctly in context.

Examples to help designers and engineers apply components correctly in context.

Button (loading state)

Checkbox

FINAL THOUGHTS

Balancing structure and flexibility to build systems that scale with the product

WHAT I LEARNED

Design systems evolve, alongside the product itself

Design system

Design system

A design system is a product in itself, with designers and engineers as its users. As an internal tool, it benefits from fast feedback loops, allowing it to evolve alongside the product.

Documentation

Documentation

Working closely with engineering to understand what matters - clear specs, naming, and structure, is key. Good documentation not only improves communication, but also makes the system easier to interpret by tools, speeding up implementation.

This was a great opportunity to apply systems thinking to bring clarity to a fast-moving product.

WHAT'S NEXT

Finding new ways of working

The engineering team has started adopting the system, reaching ~50% adoption within the first week, an early signal that it’s practical and aligned with real workflows.

AI workflows

AI workflows

Exploring how tools like Figma MCP and other AI workflows can speed up the design-to-development cycleβ€”reinforcing the need for a well-structured, machine-readable system.

Design system maturity

Design system maturity

Design system maturity

Not every product or team requires the same level of system maturity. Moving forward, I’d focus more on calibrating the right level of structure based on context, and aligning earlier with stakeholders on what that should look like.

As of Feb 2026, the team made the decision to discontinue Nearville.

Let's build something

great together!

Get in touch

Moyai F.

Based in US πŸ‡ΊπŸ‡Έ | Working Worldwide 🌏

Β© 2026 Moyai Fujimura

Let's build something

great together!

Get in touch

Moyai F.

Based in US πŸ‡ΊπŸ‡Έ | Working Worldwide 🌏

Β© 2026 Moyai Fujimura

Let's build something

great together!

Get in touch

Moyai F.

Based in US πŸ‡ΊπŸ‡Έ | Working Worldwide 🌏

Β© 2026 Moyai Fujimura