Portfolio

  • Companies
    • LUCI Systems LLC
    • Philo
    • DomaClose
    • Bungalow Design System
    • Blocks Design System
    • Stepoff
    • Globespinning
    • Hwy61
  • Projects
    • Personal Website
  • Experiments
    • Side Scroller
    • Game of Life
  • Sage Gatzke
  • Home
  • Resume
  • Portfolio

Blocks Design System2020

A foundational component library that powered CBRE's design language across multiple production applications, distributed as a Lerna-managed monorepo.

No image available

Blocks Design System provided shared UI primitives and patterns using React, distributed through a Lerna-managed monorepo and published via NPM. It was a cross-office effort between the New York and Seattle teams, with adoption across several CBRE production applications. I contributed to the component library and Storybook documentation alongside the broader team.

As the team transitioned, I was asked to collaborate with teams in Dallas and India to investigate whether a Web Components version of Blocks was feasible. The goal was to bridge React, Angular, and Vue apps under a single shared component layer across CBRE's mixed frontend ecosystem.

After researching the available tooling and prototyping approaches, I recommended against it. A shared component library carries real ongoing costs: versioning, maintenance, and coordinating updates across every consuming app. Material UI already supported both React and Angular, so a shared MUI theme file was a far more cost-effective path to UI consistency across frameworks — letting MUI handle the cross-framework complexity rather than taking that burden on ourselves.

Platforms

Browser

Technologies

ReactWeb ComponentsLernaNPMStorybook

Features

Component LibraryStorybook DocumentationMonorepo ArchitectureNPM Distribution

Repo: Private

Website: N/A