Domo Bits

Company
Domo
My contribution
  • Shared React components
  • Incremental migration
  • Cross-team leadership
A collage of Bits UI components: calendars, menus, inputs, selections, notifications, and dialogs.

Built to be shared.

Buttons, forms, menus, and dialogs appear throughout Domo. Bits gave teams a shared React foundation for those everyday interactions.

I led the effort through Domo’s UI Forum, bringing frontend representatives together to agree on the architecture, assign owners, and coordinate the migration from AngularJS.

Small pieces. A lot of possibilities.

A component is more than its default appearance. It needs to handle selections, validation, loading, and all the little changes around an interaction. Scroll through this collection to see those states unfold.

Scroll to explore the states

Keep building while the foundation changes.

We didn’t need to rewrite Domo to move forward. Adapters let teams use React components inside existing AngularJS pages, replacing the underlying pieces while product development continued.

I wrote usage-scanning scripts to find the remaining instances of each legacy component. Component-level burndowns made the work concrete, so teams could coordinate replacements and see what was left.

“This is the most organized effort I’ve seen since working here.”
Justin MartinDomo engineer · UI component migration

A path forward

Every base UI component had a React implementation, most legacy component usages were replaced, and new features could be built entirely in React. Existing AngularJS application code could stay in place without dictating how we built the next thing.

More projects

Let’s make somethingawesome together