Skip to content

React 19 / SSR / resettable

Keep the architecture. Delete the demo.

Start with working SSR, enforceable layer boundaries, DI, typed data flow, and production checks. Study the reference app, then remove it cleanly.

SSR by defaultFile-based routesTyped data flowRequest-scoped DIScoped stylesCI-ready checks

Proof, not promises

One live request. Every boundary visible.

A JSONPlaceholder response crosses the HTTP client, repository, service, and Reatom view model before React sees it. Each boundary has one job.

  1. 01
    Pagecompose the use case
  2. 02
    Featureown the interaction
  3. 03
    View modelexpose async state
  4. 04
    Servicemap DTOs to domain
  5. 05
    Repositoryown the API contract
  6. 06
    HttpClienthandle transport
live API response
JSONPlaceholder

A second proof

Same rules. Different side effect.

Search, selection, and persistence follow the same ownership rules against local storage. The examples are disposable. The boundaries are not.

persisted selectionNo blocks selected yet.

The delivery contract

Prove it before review.

$ npm run check
$ npm run test:e2e
  • ESLint + Stylelint
  • Vitest
  • TypeScript
  • SSR build
  • Knip
  • Playwright + Axe