← All postsPublished

The future of UI development (or at least how I see it right now)

Components are cheap now, context is expensive. A snapshot of where I think frontend work is heading.

I’ve been going back and forth on this note for a while, because every time I sit down to write it something new comes out and makes half my opinions outdated. So take it as a snapshot of what’s in my head today, not a prediction I’d bet money on.

The short version: components are cheap now, and context is expensive.

I think the way we build interfaces is changing faster than the way we talk about it. A couple of years ago, being a good frontend engineer meant knowing your framework inside out, having strong opinions about state management and turning a Figma file into pixel-perfect components. Now I can describe a pricing section in one sentence and get something great back in seconds. The problem is that great has become the average, so it doesn’t stand out anymore. The bar now is exceptional: work made with real care. I think most of the interesting work is going to live in the gap between those two.


The component is not the product anymore

For years the component was the unit of work. You build a Button, you build a Card, you document them, you publish them and people consume them. Design systems were mostly catalogs with nice docs.

Building tramo.digital showed me that the catalog is the least interesting part. In the repo I write each component once as a universal scaffold, and a pipeline transforms it into React, Vue, Svelte and Lit. The first time that worked end to end I felt a bit weird about it, like I had automated away a chunk of my own job. Once the excitement wore off, I noticed that what actually mattered was everything around the component: the tokens, the naming, the config that explains what each prop means, the rules that tell the model what it can and can’t touch. The output is cheap now; the context is what’s expensive.

So my bet is that UI development slowly shifts from writing components to writing the constraints for whatever writes them: tokens, semantics, accessibility rules, content structure, guardrails. Less building houses, more building the machine that builds them, and making sure none of them fall down.


Frameworks will matter less (and I’m ok with that)

I say this as someone who has spent way too many hours of my life arguing about React vs Vue vs whatever came out that week. If a model can move a component across frameworks in seconds, the framework becomes an implementation detail. People will still have favorites, me included, but I don’t think frameworks will define careers the way they used to.

What will still matter is the platform: HTML, CSS, the browser, how a screen reader actually announces your stuff, how a page behaves on a cheap Android phone with bad signal in Managua. Models are surprisingly bad at that last part, and honestly, so are most of us.


Everything looks the same

This is the part that worries me. Open any AI-generated landing page today and you’ll find the same gradient, the same rounded cards, the same three-column feature grid with an icon on top of each one. It’s the shadcn look everywhere. To be clear, I love shadcn, but when everyone ships the same defaults the web starts to feel like a hotel lobby: clean, functional and completely forgettable.

That’s why I think taste ends up being the real differentiator. Everyone will be able to produce UI; that part is solved or close to it. The hard part is looking at ten generated options and knowing which one is right, why the other nine feel off, and how to push it until it looks like a person actually made it. That skill doesn’t get cheaper with more tokens, and I kind of like that.


So what’s left for us?

I don’t think frontend developers disappear; I think the job just gets weirder. Some days I feel like a designer, some days like an infrastructure engineer, and some days like a teacher explaining to an agent for the fifth time that no, you can’t hardcode a hex value there.

If I had to guess (and I am guessing), the people who’ll do well are the ones who know the fundamentals well enough to catch generated code that’s subtly wrong, who care more about systems than individual screens, and who aren’t afraid to say “this looks generic, let’s try again”. Probably most important of all: they ship things for real users instead of demos.

That last one is personal. A lot of what I’m building with tramo is for small businesses here in Nicaragua: the lady selling rosquillas, the guy with the hammock shop. They don’t care about any of this. They care whether the page loads, whether it looks like them and whether the WhatsApp button works. If the future of UI development doesn’t make that easier for them, I don’t think we got it right.