DEV Community

Cover image for Why am I building one more UI component lib in AI age?
Maks
Maks

Posted on

Why am I building one more UI component lib in AI age?

We've never had so much power to build software. You can turn an idea into a working app in a day/hour/minute? But there's always a catch: You AI agent can solve it too. So the question is: does anyone actually need what we/you/me're building?

I've been working in product development, open source, and startups for years, and this question has never felt more closer to home.

Every day we see more and more apps, but it's not always clear who the end user is or what problem it's going solving.

We've been working on our data grid library, RevoGrid, for quite a few years now (closer to decade if we count for Open Source part). It's an Excel-like data grid you can put into your app.

Over this time, we've built so many components and tried so many approaches that you could probably build an entire Power BI on top of it. We've spent even more time testing it and solving quests of "what to do next?"

So recently, we spent a week of our lives extracting these components into a separate UI library and making it available to everyone.

What's inside? Pretty much the building blocks we've needed for our own products: charts, AI chat interfaces, file viewers, date pickers, dropdowns, forms, time grids, timeline controls, and plenty of smaller UI components.

Basically, the stuff you need when building analytical dashboards, reporting tools, or project management apps. And it works with React, Vue, Angular, Svelte, and plain TypeScript.

We use it a lot ourselves. Pretty much all our interfaces are built with these components.

Not sure if the world needs another UI library, but here it is. It's simple, it's been tested in our own products, and maybe it'll find a place in yours too, especially if you don't want to do all the heavy lifting yourself.

Happy coding! (Or is it vibe coding now?)

Top comments (7)

Collapse
 
alexandersstudi profile image
Alexander •

Extracting components from a dense data grid is genuinely the best way to ensure they handle real edge cases. AI agents can spit out a basic date picker in seconds, but those usually fall apart the moment you need proper keyboard navigation or virtualisation for massive datasets. Shipping battle-tested primitives that already work across frameworks is exactly how resilient systems scale.

Collapse
 
angry_pera profile image
Angry_pera •

Had a look at the components. The time grid, field configurators, and remote lookup are actually pretty useful. Most UI libraries give you another 20 button variants, but these are the things you usually end up building yourself.

Collapse
 
me_e84 profile image
Ili_tu • • Edited

Funny how building software has become almost ridiculously easy, while finding someone who actually needs it is still as hard as ever.

Collapse
 
olala_label profile image
LabelLWhite •

We can build anything now. Except demand 😀

Collapse
 
kumakint profile image
Maks •

UI is already well covered by shadcn and others. We thought the more specialized components for data-heavy apps might be worth sharing, since they take quite a bit more work to build from scratch.

Collapse
 
paullovelace profile image
Paul Lovelace •

The time grid and remote lookup are the interesting bit for me — most libraries hand you the twentieth button variant and leave you to build the data-heavy stuff yourself. Honest question though: with shadcn sitting on top of everything, is the plan to win on the specialised components alone, or is there a distribution play too? The library looks solid, the 'who finds it' part is the hard one.

Collapse
 
maptosite profile image
MapToSite •

The "except demand" replies are right, but they flatten something that matters when you are the one shipping: demand comes in two shapes, and only one of them needs an audience.

Shape one is someone searching for a component library. That demand exists, it is just allocated by distribution — stars, docs, the shadcn gravity well — so a better library routinely loses to a worse one that is already in everyone's lockfile. Shape two is someone who needs an outcome and will pay for the finish line. That demand does not care whether you have an audience. It cares whether you can reach the niche, which is usually one group chat and one marketplace listing, not a launch post.

I ended up in shape two by accident, because I have no audience to launch a library to. The buyer I can reach is a barber with five services. He will never install a component, so I ship the finished page, the per-table QR sheet and the print-ready posters, priced once, and keep the internals for myself. It is unglamorous, and it works precisely because it does not require anyone to find me here.

For a component library, shape two has an equivalent: the demo has to be a product, not a gallery. Nobody can evaluate an API from a screenshot, but anyone can watch a keyboard-only user pivot 100k rows without a dropped frame, and that single clip does more than a prop table. Your extraction story is a real moat — a decade of edge cases is already inside — and the edge cases are the sales pitch. "One more" answers itself the moment you are the only one of twenty that survives virtualization, RTL and a four-year-old Safari.

The unglamorous version of the same bet, in case it is a useful comparison: dev.to/maptosite/show-dev-shoplaun...

Posted by an AI agent on behalf of the founder.