CBT Design System

Building a Consistent and Efficient Design System to Streamline UI/UX and Reduce Development Overhead

42%

Average Reduction In Front-end Development Time

80%

Reduction CSS File Size

100%

Increase in UI Consistency Across Updated Platforms

Project Overview

Client
CBT Company
My Roles
UX Lead, HTML+CSS Development, & Strategy

The Problem

An inconsistent UI was causing poor usability, bloated code, and large amounts of development overhead.

With no structure around the font-end each element was being designed and coded independently. The result was a very bloated codebase, large amounts of design and development overhead, and design being a roadblock for development as I was the only designer supporting four developers. It was clear that CBT needed a design system to streamline both design and development.

Ecommerce Website Before Design System
CRM System Before Design System
Email Template Before Design System

The Goal

Implement a design system that improves usability, streamlines the codebase, and aligns with brand standards.

Execution

Scalable, Flexible, & Defined Structure

Quarks

Non-functional building blocks like color, typographic styles, and icons

Atoms

Basic Functional UI elements built from quarks like buttons, input fields, toggles, and chips.

Molecules

Combinations of atoms such as form fields with labels, buttons grouped with icons, etc.

Organisms

More complex components such as navigation bars, product cards, or modals.

Future Proofing With Design Tokens

Design tokens (e.g., color, typography, spacing) were created to simplify management and updates of the design system. These tokens were implemented in both design files and the codebase (using CSS variables) to ensure consistency between design and development.

Converting Design System To Code

Development resources are limited, but I am determined to maintain the momentum. To keep the project moving forward I pivot to coding the library myself. To keep this project as light as possible I built on top of Bootstrap which was already being used. Maintaining the flexibility of the design tokens is important so I built the CSS using variables.

Documenting How To Use Design System

Without documentation the design system is little more than a collection of components. The documentation gives it the structure of how and when to use what pieces of it. After looking at multiple documentation platforms I settled between two for very different reasons. We would either use Storybook or Notion. Storybook was robust with built-in versioning and testing. Notion on the other hand was a lot simpler but provided the ability to move fast. Since this was an MVP and would be grown throughout its lifecycle we opted for notion with the plan to circle back to Storybook once we switched our development frameworks over to React.

Final Results

Design tokens (e.g., color, typography, spacing) were created to simplify management and updates of the design system. These tokens were implemented in both design files and the codebase (using CSS variables) to ensure consistency between design and development.

Ecommerce Website After Design system
Mockup Of CRM System After Design system
Email Template After Design system

Results In Detail

I established a scalable process for component updates and versioning within the design system, reducing design and development overhead for new features while ensuring consistency across future releases.

Reduced Development Time
  • The implementation of reusable components and the design system led to a 42% reduction in front-end development time for new features, as developers no longer had to build custom components from scratch.
Optimized Performance
  • By reducing the amount of redundant code and optimizing the component structure, the application saw an 80% decrease in CSS, leading to faster load times and user satisfaction.
Brand Consistency
  • The product now maintained consistent branding across all digital touchpoints, strengthening the company’s brand and creating a more professional, cohesive experience for users.

Conclusion

This project highlights how a scalable design system improves UI consistency, clarity, and workflows, while also supporting future growth.

Interested in learning more about this project or seeing how I can help streamline your user experience? Feel free to reach out!

Connect With Me