01 Startup Design System

01 Startup Design System

01 Startup Design System

Building Nearville's First Design System

Nearville is a new peer-to-peer rental app for everyday items, making it easy for people to borrow and lend within their community. After the release of MVP in May 2025, the urgency shifted to building a scalable design system.

ROLE

Design System Lead

Responsible for building Nearville’s first design system from scratch. Partnered with product designers to gather use cases, ran design audits, and defined governance processes. Worked closely with engineers to align on feasibility, implementation, and scaling.

CLIENT

Nearville (0→1 Startup in P2P space)

TIMELINE

2 months

DELIVERABLE

Design System

INDUSTRY

Tech / Startup

👾 The Problem

The MVP was shipped quickly by 3 designers working in parallel:

  1. Inconsistent designs across screens and flows

  2. No shared guidelines or documentation

  3. Excessive back-and-forth, slowing momentum

Inconsistent Styling

Inconsistent Styling

Inconsistent Styling

Inconsistent Exit Behavior

Inconsistent Exit Behavior

Inconsistent Exit Behavior

✅ The Solution

I built Nearville’s first design system from the ground up. The work focused on:

  • Designing a simple yet scalable foundation to set guardrails for product growth

  • Establishing governance processes, design reviews, and decision frameworks in partnership with engineers

  • Balancing simplicity for quick adoption with flexibility to evolve alongside the product

The result: a living system that delivers consistency today and adapts to tomorrow’s needs.

🚀 The Impact

Design System

Built to scale with product

Built to scale with product

30+

30+

30+

Core components

Core components

100%

100%

100%

Adoption by designers

Adoption by designers

40% ↗︎

40% ↗︎

40% ↗︎

Designer efficiency

Designer efficiency

🔍 The Process

👀 Early-phase product meant consistency had to coexist with exploration.

👀 Early-phase product meant consistency had to coexist with exploration.

👀 Early-phase product meant consistency had to coexist with exploration.

Context: Early-phase (0→1) product

  • Business direction still shifting

  • Product strategy evolving, scope adjusting

  • Designers exploring new ideas, rapidly iterating

  • Developers balancing limited resources and competing priorities

Implication

The design system had to create consistency without stifling creativity or speed.

🧩 Starting with a lightweight system that avoided over-engineering

🧩 Starting with a lightweight system that avoided over-engineering

🧩 Starting with a lightweight system that avoided over-engineering

The examples below show two card patterns that appeared too similar in form to justify separate treatments. While it’s valid to support multiple card types in a design system, they need clear reasoning and purposeful use cases. At this stage, designers were still experimenting with icon usage, text placement, and button treatments, which led to variations that felt overlapping rather than distinct.

Landing Page Ideation

Landing Page Ideation

Landing Page Ideation

Onboarding Page Ideation

Onboarding Page Ideation

Onboarding Page Ideation

To bring clarity and consistency, I created card item components with standardized sizes (S, M, L–landscape, L–portrait, XL) and system states (loading, placeholder). This framework allowed designers to continue exploring content and interaction patterns while keeping the underlying foundation consistent and scalable.

Card Item Components

Card Item Components

Card Item Components

Card Block Components

Card Block Components

Card Block Components

In addition, I developed card block components, which grouped card items with labels. I set flexible properties so designers could easily toggle between card sizes, adjust the number of cards, and show or hide labels as needed.

In short, I approached simplicity from two perspectives: building a simple, scalable system and ensuring simple adoption by designers.

🧩 Prioritizing Scalability Over Quick Fixes

We made a strategic decision to implement an atomic design system, ensuring the foundation was scalable rather than relying on short-term fixes. By structuring components into atoms, molecules, and organisms, we created a shared language across design and engineering. This approach allowed us to reduce duplication, streamline decision-making, and build a system flexible enough to grow with the product.

Atomic Design System

Atomic Design System

Atomic Design System

By implementing an atomic design system and building from a strong foundation up, we created a framework that not only scales as the product grows but also accelerates the design and development process. With clear structures in place, teams can move faster while maintaining consistency.

🧩 Clarity over assupmtions

In this phase, I prioritized clarity over assumptions. Even though my immediate users were other designers, I couldn’t assume we were automatically aligned. By documenting design decisions while building components, I created a single source of truth that reduced ambiguity, streamlined collaboration, and ensured consistency. This practice not only drove alignment within the design team, but also bridged communication with product and engineering, allowing everyone to move forward with confidence.

🚀 Impact

  1. 100% adoption by designers

  1. Strong foundation to scale

  1. Built momentum through designer efficiency

💬 Key Takeaways

1

Context shapes guardrails

In an early-stage product, I couldn’t design a system that solved every scenario. Instead, I built just enough structure to keep us consistent while leaving flexibility for exploration.

2

Design for adoption

A system only works if people use it. By keeping it simple and avoiding over-engineering, designers could pick it up quickly and integrate it into their workflow naturally.

3

Foundations enable scale

Starting with a strong foundation gave us the ability to grow faster. The system scales with the product, enabling speed without sacrificing consistency.

4

Alignment drives success

Beyond components, the real challenge was aligning with product and engineering on feasibility, timelines, and the system’s value. Clear communication kept everyone moving together.