React

React development for product interfaces

We build React interfaces for products and portals where the team wants a component model and a large hiring pool. Next.js is used when server rendering or a disciplined routing model helps the product. Business rules stay on the server.

  • Application shells
  • Dashboards
  • Portals
  • Next.js when it helps

What we build

SaaS application shells, customer portals, and operational dashboards. Data fetching, error states, and permissions are designed with the API. A React app that hides prices or buttons only in CSS is not a permission model, and we will not ship it as one.

React, Angular, or Vue

React fits product teams and design-system heavy UIs. Angular fits large form-and-workflow applications, especially if the team is already there. Vue fits incremental adoption and teams that want a lighter structure. The pages for each say so without pretending one of them won.

React for a product interface

React when

  • A web app with signed-in users
  • A component set you will keep
  • A team that can maintain it

Not required

  • A simple content page
  • A native phone app by default
  • A rewrite of a calm admin

What changes a React app

01

The data

The server still owns the rules. React owns the screen.

02

The kit

We pick a small set of libraries and stick to them.

03

The states

Empty, loading, denied, and error are part of the first release.

Before a React app

  1. 01

    Signed-in users

    Who they are, and the role that changes the screen.

  2. 02

    The server

    Who owns the rules. React owns the screen.

  3. 03

    The states

    Empty, denied, and error, not only the happy path.

  4. 04

    The keepers

    Who will add the next screen.

Marks React is a product surface

  1. 01

    A product, not a page

    It is a signed-in interface with state, not a handful of marketing pages.

  2. 02

    State matches the record

    What the screen shows can be reconciled with the server.

  3. 03

    Not for a brochure

    A content site without an application was pointed at a simpler front end.

  4. 04

    States are visible

    Loading, empty, and error are designed, so build is not inventing them.

What we build

Application shells

Navigation, roles, and the states a long-lived product needs.

Dashboards

Views with defined metrics and a path to the underlying record.

Portals

Customer or partner tasks that share the API with other clients.

Next.js when it helps

Public pages that must load and be indexed, beside the logged-in product.

Questions we hear

Do you use TypeScript with React?

Yes for new work.

Can you take over a React codebase?

Yes, after we see how data and auth are handled. A rescue often starts by making those two boring.

Is this website React?

No. This marketing site is Angular. We use both, and we pick per product.