Hacker News new | ask | show | jobs
by solardev 610 days ago
Did you ever investigate if true componentization (like React Server Components, maybe coupled with Storybook etc.) could fill that niche instead?

A MUI theme isn't by itself sufficient, since it really only modifies variables like shared design tokens would.

But it's rare that bespoke components would be 1:1 equivalent with the existing functionality/behaviors of a UI lib (unless that was a design constraint from the get-go, i.e. designers were only allowed to use existing functionality in that lib).

At our work, all components started out with MUI, but would often be extended with custom code based on the designers' needs. I could see no real way to sync that part of it with Figma (which would often just have basic wireframes and prototypes, maybe linked together in screens, hover states, etc., but not really implemented as interactive code).

It's kinda missing a storybook-like layer that can actually use and display different states, inputs, outputs, etc.

1 comments

We bailed on the effort before we would have gone there. We never even got to test whether the theme would be enough because we could not even get that much of an export in place. We also were an immature organization - large, with lots of funding and devs, but comprised of a collection of acquisitions the VCs had merged together into one company and brand. Which meant we all came to the table with years of history and custom code, and were just trying to find an easy way to apply a common look and feel before delving into whether we could evolve to share a full-blown design system. We did all use MUI so it seemed like a good idea at the time. But it ended being a fairly short effort, with a conclusion of: "No."
Ah, thanks for the details! We were in a similar situation, with teams and codebases cobbled together from acquisitions.

I actually advocated AGAINST a shared component system, predicting (accurately in hindsight) that the immature integration frameworks would not outlive the natural turnover of our teams and products, and would probably become tech debt before it even saw production use. Not a few months later, our entire department was dissolved, many product lines abandoned, etc. Luckily the teams that are still there were able to just keep going instead of wasting time on the doomed standardization effort...