Gabriel Teixeira

Interfaces for systems that think.

I'm Gabriel, a frontend engineer in Tampa, Florida. I build the screens that sit in front of inference fleets, agents, and the people who run them. Below are five working products, every one responsive down to a phone.

Open the work

Five products

5 demos

What I do

  1. 01

    Product interfaces

    Dashboards, editors, consoles. The screens people keep open all day, built to stay fast when the data gets big.

  2. 02

    Interfaces for AI systems

    Streaming output, tool calls, agent state. UI that shows what the model is doing without pretending to know more than it does.

  3. 03

    Design systems

    Tokens, primitives, and the documentation that gets a team to actually use them. Tailwind first, no component library required.

  4. 04

    Performance and accessibility

    Budgets for bundle size and interaction latency, a keyboard path for every pointer path, and motion that switches off on request.

Under the hood

What the demos are built with, and which one to open if you want to see it working.

How I work

I came to frontend from infrastructure — RAG pipelines, inference servers, agent runtimes. That background shows up in the interfaces: they respect latency budgets, they handle streaming state without flicker, and they assume the data will arrive late and out of order.

Every demo here is built with Next.js and Tailwind, no component library, and no third-party chart or drag-and-drop package. The point is to show what I can do with the platform itself.

I care about the quiet parts: keyboard focus that is visible, motion that turns off when you ask it to, and layouts that hold together at 320px.

How a project runs

4 steps
  1. 01

    Read the system

    Before any UI, I learn what the backend actually returns, how late, and in what order. The interface is designed around that, not around a mockup.

  2. 02

    Prototype in the browser

    Real components and real data shapes from day one. A prototype that runs is worth more than a deck.

  3. 03

    Build the boring parts well

    Loading, empty, error, and offline states. Focus management. Keyboard paths. These are the work, not the polish.

  4. 04

    Ship, measure, trim

    Interaction latency and bundle size get tracked, not guessed. Anything that does not earn its bytes goes.

Have a screen that needs building?

Based in
Tampa, Florida
Looking for
Frontend and product engineering roles
Elsewhere
GitHubLinkedIn