Logo
Published on

Building My Own UI Library

Authors
  • avatar
    Name
    Babs Oyewumi
    Twitter

I recently launched my personal website and decided to build my own React UI component library alongside it. This is a space for me to experiment, grow, and apply everything I've been learning about frontend development, design systems, and component architecture.

The Why Behind This Project

Creating my own library isn't about reinventing the wheel—it's about understanding the mechanics of the wheel. I want to dive deep into the theming, accessibility, reusability, and design consistency that makes scalable UI systems work.

This project gives me the chance to:

Learn by doing — Apply patterns I've used professionally in a controlled environment where I can experiment freely

Build thoughtfully — Create reusable components from scratch with proper documentation and clear APIs

Improve my workflow — Develop better tooling, structure, and developer experience for my own projects

Progress So Far

Foundation Complete

  • Personal site is live and deployed on Vercel
  • UI library scaffolded with Vite and TypeScript
  • Clean project architecture with @ path aliases
  • Clear separation: main site consumes library as dependency

The groundwork is solid, which means I can focus on the interesting parts—the actual components and design system.

What's Coming Next

Core Development

  • Building essential components (Button, Card, Input, Modal)
  • Implementing design tokens and comprehensive theme support
  • Setting up Storybook for component documentation

Quality & Testing

  • Adding test coverage with Vitest/Testing Library
  • Exploring visual regression testing
  • Preparing build pipeline for potential npm packaging

My Philosophy on This

I'm not trying to compete with MUI, Radix, or any established library. This isn't about building for external users—it's personal. It's optimized for my workflows, my learning, and my clarity of thought.

The goal is shipping and learning in public. If it eventually becomes something worth open-sourcing or sharing more broadly, that's a bonus. But right now, it's just me building something I understand completely.


This is part of my learning-in-public journey. Follow along as I document the process of building a design system from the ground up.