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:
Inconsistent designs across screens and flows
No shared guidelines or documentation
Excessive back-and-forth, slowing momentum
✅ 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
🔍 The Process
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.
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.


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.
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.
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
100% adoption by designers
Strong foundation to scale
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.