Skip to content

UI Data Flow

The InfraLynx UI data layer is structured to keep transport, normalization, state, and rendering responsibilities separate.

flowchart LR
  A["API /api/overview"] --> B["services/api-client"]
  B --> C["services/domain-overview"]
  C --> D["hooks/use-domain-overview"]
  D --> E["state/domain-overview-state"]
  E --> F["app.tsx shell rendering"]

Flow Rules

  • transport concerns stay in services
  • normalization happens once per response
  • hooks coordinate asynchronous loading and retry behavior
  • reducer state defines loading, ready, and error transitions
  • components render from normalized state only

Benefits

  • clearer failure boundaries
  • lower coupling to backend schemas
  • easier future expansion to caching, invalidation, and mutation workflows