SharePlane

Agent-friendly HTML field manual

React Is Not Dying. SPA-by-Default Is.

The argument is not anti-React. It is anti-automatic-SPA: the habit of shipping a client application when the honest contract is mostly documents, forms, server state, and inspectable outcomes.

Cloud Codes source thesis Decision-matrix field manual Public-safe, source-bounded

The practical question is not whether React or HTMX is morally superior. The practical question is which architecture creates the smallest verification surface that can still carry the interaction model honestly.

TLDR

The shortest honest version

What this is about in one minute

The argument without the tool-fight fog

This artifact is about a front-end default that has become too automatic. A lot of web pages are documents, forms, catalogs, receipts, or workflow steps. They need clear structure, honest state ownership, and inspectable outcomes. They do not always need to become a client-side application.

React gets mentioned because people often reach for it before asking what kind of surface they are building. React is not the villain. It is a good answer when the product needs durable client-side state, rich interaction, component composition, offline behavior, complex editors, or dense application workflows.

HTMX enters the conversation because it makes a different default visible: keep the page in HTML, let links and forms carry intent, and let the server return the next useful piece of markup when the server owns the workflow state. That can make the page easier for humans, validators, crawlers, and agent tooling to inspect.

For agent-readable web pages, the useful claim is not that agents magically prefer one library. The useful claim is that readable markup, explicit links, explicit forms, stable labels, and visible receipts reduce the amount of hidden client runtime an agent has to infer.

Builder rule: start HTML-first when the work is mostly meaning, navigation, forms, server state, or receipts. Add HTMX for small server-owned interactions. Add React when client state and rich interaction are the product.

Executive brief

The architecture decision is state ownership

Decision-maker summary

The issue is not React versus HTMX. The issue is defaulting to SPA architecture when the page or workflow does not need client-owned application state. A full SPA can be the right investment, but it should be earned by the interaction model.

Public artifacts, forms, catalog pages, documentation pages, and many workflow surfaces often benefit from HTML-first architecture because the primary value is visible content, clear navigation, explicit submission, server validation, and durable receipts.

Operating rule

  • Use HTML-first patterns when the document, workflow, or server state is the product.
  • Use HTMX or hypermedia when server-owned interactions can return meaningful HTML fragments.
  • Use React when rich client-side interaction, long-lived local state, or component composition is central to the product.
  • Do not use popularity as architecture proof. Use it only as a signal that a pattern deserves evaluation.

Long-form thesis

SPA-by-default is the weak default, not React

The useful provocation in the Cloud Codes source video is not the slogan. It is the discomfort underneath the slogan: a lot of modern front ends make simple web work harder to inspect than it needs to be.

"React is dying" is bad framing because it turns an architecture question into a tribe question. React is still an active, useful library for building interactive interfaces. It is especially strong when the client owns meaningful state: editors, canvases, dashboards, offline workspaces, multi-step application shells, cross-widget interactions, and experiences where component composition is carrying real product value. Calling React dead confuses overuse with failure.

A better claim is sharper and more useful: SPA-by-default is the questionable default. The web already has a durable interaction model. Links navigate. Forms submit. Servers validate. Responses can carry the next visible state. Pages can expose headings, labels, tables, anchors, provenance, receipts, and caveats without requiring a client runtime to reconstruct meaning. When the page is mostly a document, catalog, receipt, or server-owned workflow, turning it into a full client application adds a verification surface before the work has asked for one.

That extra surface is not free. A full SPA can introduce client routing, hydration, bundle loading, state synchronization, optimistic updates, error reconciliation, and test paths that do not exist in the simpler design. Sometimes those are the cost of doing the job well. Sometimes they are only the cost of following habit.

Hypermedia and HTMX matter because they make the old web model newly discussable. HTMX lets HTML elements issue requests, target updates, trigger behavior, and swap server-returned HTML. That does not make HTMX universally better than React. It makes a different ownership model easy to express. If the server owns the record, the validation rule, the permission check, and the next workflow state, returning the next piece of HTML can be more honest than asking the client to simulate authority it does not really have.

Server-owned workflow state is especially important in governed systems. If a form submission fails, the returned HTML can show the error beside the field. If a record update succeeds, the returned markup can include the new value and the receipt. If a step requires approval, the next page can make the stop condition visible. Humans can read it. Validators can test it. Search and crawler systems can often discover more of the meaning. Agent tooling has fewer hidden assumptions to reverse-engineer.

Readable markup is not magic. It does not guarantee SEO, ranking, crawler access, or AI discoverability. But it does improve the public contract of a page. A heading says what section the reader is in. A link says where a path goes. A form label says what input is expected. A table says how rows compare. A receipt says what evidence exists. Those are useful to humans first, and they also give automated tools more explicit handles.

That is why the phrase "AI agents prefer HTMX" must stay in the right box. It is a source thesis and teaching interpretation, not a measured universal fact. Agent behavior depends on the tool, browser runtime, network access, robots policy, JavaScript execution, permissions, task shape, and the actual page implementation. A bad HTML page can be harder to use than a well-built React app. A React app with server rendering, accessible markup, stable routes, and visible state can be highly inspectable. The claim worth publishing is more modest: agent-friendly front ends tend to benefit from semantic HTML, smaller state surfaces, explicit actions, and inspectable responses.

React remains the correct answer when client-side interaction is the product. If users are manipulating a long-lived editor, arranging a visual workspace, handling offline changes, coordinating multiple live panels, or depending on rich local state, React is not an indulgence. It is carrying the interaction model. The mistake is not using React. The mistake is using a client app as the default wrapper around work that wants to be a page, a form, a receipt, or a server-owned workflow.

The practical decision rule is simple: choose the smallest architecture that honestly supports the interaction model. Start with semantic HTML and server-owned truth. Add HTMX when small server-returned updates make the workflow clearer. Add React islands when a specific region needs rich client state. Use a full SPA when the client application is genuinely the product. That rule is less glamorous than a framework debate, but it is much harder to fool.

Source thesis vs verified posture

Keep the strong claim in the right box

Source thesis

"AI agents prefer HTMX."

This artifact treats that line as the Cloud Codes video thesis and as a useful teaching provocation. It is not published as a measured universal fact about every agent, crawler, browser, permission model, or runtime.

Publishable posture

Agent-friendly front ends tend to benefit from semantic HTML, smaller client state, clearer action boundaries, and server-owned workflow state where appropriate.

That claim is an architecture judgment supported by official HTMX and React documentation, not a benchmark of agent preference.

What the video gets directionally right

Complexity has a carrying cost

SPA-by-default creates avoidable surface area

For many pages, a full client app adds routing, hydration, state synchronization, bundle behavior, and test surface before the problem has asked for those things.

Hypermedia can be easier to inspect

When links and forms express the workflow and the server returns HTML, the state transition is often visible in markup rather than hidden behind client-only orchestration.

Server-rendered interactions can reduce verification burden

If the server owns the source of truth, returning the next valid UI state as HTML can make the outcome easier for humans, validators, and agents to inspect.

HTML-first artifacts age well

Readable headings, forms, tables, links, receipts, and provenance notes remain useful even when the current toolchain, model, crawler, or JavaScript runtime changes.

Where the claim needs guardrails

Do not replace one reflex with another

React is not dying

React is actively documented as a library for web and native user interfaces, components, interactivity, and stateful UI.

Popularity is not proof

HTMX popularity and growth are community signals. They do not prove that agents universally prefer it.

Agents vary

Agent behavior depends on crawler rules, browser runtime, network access, permissions, tools, page hydration, and task context.

React still has the right jobs

Rich persistent editors, offline-capable apps, complex dashboards, and highly interactive client experiences can justify React.

Decision matrix

Choose the smallest honest architecture

Situation Prefer HTML / HTMX / hypermedia when Prefer React SPA when Hybrid option
Content-heavy artifact The main value is reading, linking, citation, tables, provenance, and durable structure. The artifact itself is a dynamic workspace with persistent local state. Static article with a small React island for one rich control.
Form-driven workflow The server validates and returns the next step or updated result. The form is really a multi-panel client application with complex draft state. Server-owned form with a client island for high-friction controls.
Dashboard Cards and tables update from server-owned filters or simple refreshes. Users manipulate live charts, local layouts, and cross-widget state all day. Server shell with React widgets for the stateful panels.
Offline-capable app Offline behavior is not part of the promise. Local persistence, sync conflict handling, and offline edits are core requirements. Static shell plus a React-powered offline workspace.
Highly interactive editor The editor is simple enough for native controls and server submit flows. The editing surface has selection models, undo stacks, drag/drop, previews, and long-lived client state. HTML documentation shell around a React editor island.
Admin CRUD surface Records, forms, tables, and confirmation flows are server-owned and inspectable. Operators need dense inline editing, optimistic updates, and cross-record client state. HTMX list/detail workflow with React for specialized controls.
Public knowledge page Public meaning should be visible without waiting for a client runtime. The public page is also an application experience that needs client computation. HTML-first page with progressively enhanced demos.
Agent-inspected workflow The action boundary can be represented by links, forms, returned markup, receipts, and clear outcomes. The agent must operate a true client app where the UI state is the work product. Server-returned receipts plus client islands for legitimate local interaction.

Architecture field manual

Rules of thumb that survive tool fashion

01

Own state on the server when the server is the source of truth

If the database decides what is real, do not manufacture a parallel client authority without a reason.

02

Use semantic HTML as the durable contract

Headings, tables, labels, forms, buttons, links, and receipts are cheaper to inspect than private runtime conventions.

03

Treat client JavaScript as enhancement

Use client code when it improves the job. Do not make it the default architecture tax for every page.

04

Use React when client state is the actual product

If the user experience depends on long-lived local state, component composition, and rich interaction, React is carrying real weight.

05

Keep action boundaries explicit

An agent or validator should be able to tell what action was requested, where it went, and what changed.

06

Make outcomes inspectable in returned markup

A server response that includes the visible result, error, or receipt is easier to review than a hidden client transition.

07

Prefer boring contracts agents can parse

Readable markup, stable labels, and explicit receipts beat clever runtime magic when the work must be audited.

08

Escalate only when the interaction model earns it

Knuth and Torvalds would both roll their eyes at unnecessary moving parts, which is usually a useful signal.

Field note Good architecture is not about proving a favorite tool right. It is about making the page's contract obvious.

Anti-patterns

Bad defaults to catch early

Shipping a full SPA for a mostly static article

If the reader needs text, links, and evidence, do not bury the core meaning behind a client runtime.

Hiding core meaning behind client-only rendering

Agents, validators, and readers should not need to execute a large app to discover the page's thesis.

Treating popularity as architecture proof

Community growth can justify attention. It cannot decide a system design by itself.

Treating AI-agent behavior as universal

Agent behavior changes with tools, permissions, runtime, and task shape. Test the actual surface.

Calling React dead because one default is overused

Overuse of SPAs is a useful critique. It is not evidence that React has stopped being useful.

Visual prompt suite

Copy-ready visual prompts

These prompts translate the artifact into public-safe teaching graphics. They are intentionally about the architecture thesis, not source-packet mechanics.

Mainline white 16:9 prompt

Clear public teaching graphic for a standalone slide.

Prompt

Render a 16:9 mainline white SharePlane technical explainer.
Intended visible title: "React Is Not Dying. SPA-by-Default Is."
Intended visible subtitle: "Use React when client state is the product. Use HTML-first patterns when the document, workflow, or server state is the product."
Intended visible section headers and labels: "HTML-first / HTMX / hypermedia", "Decision gate", "React / SPA", "Server-owned workflow state", "Client-owned application state", "Readable markup", "Rich interaction", "Receipts", "Editors and dashboards".
Visible callouts: "Documents, forms, catalogs, receipts", "Server validates and returns useful HTML", "Agents inspect visible structure", "Use React for durable local state", "SPA when the client app is the product", "Popularity is not proof".
Visible bottom-line banner: "Choose the smallest architecture that honestly supports the interaction model."
Diagram objects: split decision map with left HTML-first lane, right React/SPAs lane, center decision gate shaped like a red switch, bottom rule banner, small evidence badges for official HTMX docs, official React docs, and ecosystem signals.
Layout and composition: near-white background, black title, red decision gate, left/right comparison lanes, clean labels, generous margins, dense but readable architecture map, no decorative-only stock imagery.
Palette and style: white or near-white, charcoal, light gray, red accent, crisp technical editorial style.
Visible text constraints: Render only the specified reader-facing title, subtitle, section headers, labels, callouts, evidence badges, and bottom-line banner. Do not render metadata labels such as "prompt", "teaching slide", "caption", "layout notes", "metadata", "alt text", "mainline white prompt", "dark expressive prompt", "aspect ratio", or "visual prompt suite".
Do not imply React is dead. Do not imply HTMX replaces React universally. Do not imply AI agents measurably prefer HTMX as a universal fact. Do not imply HTML-first guarantees SEO, ranking, or AI discoverability. Do not include source packet, transcript, subtitle, media, screenshot, hash, private handoff, or internal receipt details.

Accessibility alt-text concept

A white-background decision map comparing HTML-first server-owned workflows with React client-owned applications, joined by a red state-ownership gate and a bottom rule to choose the smallest honest architecture.

Dark expressive 16:9 prompt

Field-manual version with strong contrast and a red decision path.

Prompt

Render a 16:9 dark expressive SharePlane technical field-manual graphic.
Intended visible title: "React Is Not Dying. SPA-by-Default Is."
Intended visible subtitle: "The risky default is client-app architecture before the work has earned client-owned state."
Intended visible section headers and labels: "Source thesis", "Publishable posture", "Decision gate", "HTML-first path", "React path", "Guardrails".
Visible callouts: "Source thesis: AI agents prefer HTMX", "Publishable posture: readable markup and smaller state surfaces help inspection", "Server owns truth: return HTML receipts", "Client owns truth: use React for rich local state", "No universal agent benchmark", "No popularity-as-proof".
Visible bottom-line banner: "The question is not React or HTMX. The question is who should own the state."
Diagram objects: dark technical board, red/amber decision route through a central state-ownership gate, left lane for HTML-first and HTMX interactions, right lane for React/SPAs, small guardrail chips, visible receipt cards, and a restrained grid background.
Layout and composition: dramatic but professional; field-manual density; all text readable; red path shows the decision flow; avoid goofy cyberpunk wallpaper, mascots, random code rain, or abstract glow without explanation.
Palette and style: black, charcoal, off-white, gray, red and restrained amber accents, premium technical operations-board feel.
Visible text constraints: Render only the specified reader-facing title, subtitle, section headers, labels, callouts, guardrails, and bottom-line banner. Do not render metadata labels such as "prompt", "teaching slide", "caption", "layout notes", "metadata", "alt text", "mainline white prompt", "dark expressive prompt", "aspect ratio", or "visual prompt suite".
Do not imply React is dead. Do not imply HTMX replaces React universally. Do not imply AI agents measurably prefer HTMX as a universal fact. Do not imply HTML-first guarantees SEO, ranking, or AI discoverability. Do not include source packet, transcript, subtitle, media, screenshot, hash, private handoff, or internal receipt details.

Accessibility alt-text concept

A dark field-manual decision board showing a red path through state ownership: HTML-first when the server owns the workflow, React when client-side state is the product.

Capstone 16:9 prompt

The single best artifact-summary visual.

Prompt

Render a 16:9 capstone SharePlane architecture explainer.
Intended visible title: "React Is Not Dying. SPA-by-Default Is."
Intended visible subtitle: "Architecture should follow state ownership, not framework habit."
Intended visible section headers and labels: "Source thesis", "Publishable posture", "Decision matrix", "Guardrails", "Bottom-line rule".
Visible callouts: "Source thesis: AI agents prefer HTMX", "Publishable posture: readable markup, explicit actions, inspectable responses", "HTML-first: documents, forms, catalogs, receipts, server workflow", "HTMX: small server-returned HTML updates", "React: rich client state, editors, dashboards, offline work", "Popularity signal only", "No universal agent-preference claim".
Visible bottom-line banner: "The question is not React or HTMX. The question is who should own the state."
Diagram objects: top source-thesis versus publishable-posture split, middle three-column decision matrix, right-side guardrail ledger, bottom red banner, small public-source badges for HTMX docs, React docs, Rising Stars 2025, State of JavaScript 2025, and unofficial State of React 2025 survey context.
Layout and composition: strongest single-image summary; dense but not cramped; clear hierarchy; white or near-white base with controlled dark panels; red emphasis for state ownership and guardrails; suitable as a standalone slide.
Palette and style: SharePlane editorial technical style, near-white background, charcoal panels, gray dividers, red decision highlights, crisp public-safe labels.
Visible text constraints: Render only the specified reader-facing title, subtitle, section headers, labels, callouts, badges, and bottom-line banner. Do not render metadata labels such as "prompt", "teaching slide", "caption", "layout notes", "metadata", "alt text", "mainline white prompt", "dark expressive prompt", "aspect ratio", or "visual prompt suite".
Do not imply React is dead. Do not imply HTMX replaces React universally. Do not imply AI agents measurably prefer HTMX as a universal fact. Do not imply HTML-first guarantees SEO, ranking, or AI discoverability. Do not include source packet, transcript, subtitle, media, screenshot, hash, private handoff, or internal receipt details.

Accessibility alt-text concept

A capstone architecture slide separating source thesis from publishable posture, showing the decision matrix and guardrails, with a bottom banner about state ownership.

Narrow/mobile 9:16 prompt

Portrait variant for mobile sharing and narrow review surfaces.

Prompt

Render a 9:16 portrait SharePlane technical poster.
Intended visible title: "React Is Not Dying."
Intended visible subtitle: "SPA-by-default is the questionable default."
Intended visible section headers and labels: "1. Ask who owns state", "2. HTML-first when the server owns truth", "3. React when client state is the product", "4. Keep the guardrails".
Visible callouts: "Documents, forms, catalogs, receipts", "Server returns inspectable HTML", "Editors, dashboards, offline apps", "Agent-friendly is a design interpretation, not a universal benchmark", "Popularity is an ecosystem signal, not proof".
Visible bottom-line banner: "Choose the smallest honest architecture."
Diagram objects: vertical decision ladder, red state-ownership checkpoint, stacked HTML-first and React lanes, compact guardrail card, public-safe source badges.
Layout and composition: portrait mobile-friendly hierarchy, large readable labels, compact explanatory cards, no tiny dense table, no decorative clutter.
Palette and style: near-white or charcoal, red checkpoint, high-contrast readable text, SharePlane field-guide poster.
Visible text constraints: Render only the specified reader-facing title, subtitle, section headers, labels, callouts, badges, and bottom-line banner. Do not render metadata labels such as "prompt", "teaching slide", "caption", "layout notes", "metadata", "alt text", "mainline white prompt", "dark expressive prompt", "aspect ratio", or "visual prompt suite".
Do not imply React is dead. Do not imply HTMX replaces React universally. Do not imply AI agents measurably prefer HTMX as a universal fact. Do not imply HTML-first guarantees SEO, ranking, or AI discoverability. Do not include source packet, transcript, subtitle, media, screenshot, hash, private handoff, or internal receipt details.

Accessibility alt-text concept

A portrait decision ladder asking who owns state, then routing readers toward HTML-first server workflows or React client-state applications with explicit guardrails.

Claim/evidence ledger

Publishable language beats viral language

Claim Status Evidence / source type Publishable wording
"React is dying" Rejected as factual wording Official React documentation presents React as an active UI library for web and native interfaces. React remains valid for rich component-based and client-state experiences.
"SPA-by-default is often overkill" Reasoned architecture judgment Architecture tradeoff based on verification surface, state ownership, and interaction complexity. Many document and workflow pages should start with the smallest architecture that can carry the interaction model.
"HTMX supports HTML attributes for AJAX-driven interactions" Verified Official HTMX documentation and reference describe request attributes such as hx-get, hx-post, triggers, targets, swaps, and server-returned HTML behavior. HTMX can express AJAX-style interactions directly in HTML attributes.
"React is useful for component-based interactive UIs" Verified Official React documentation and React interactivity docs frame React around components, events, interactivity, and state. React is appropriate when component composition and client-side interaction carry real product value.
"HTMX popularity/growth exists as a community signal" Popularity signal only JavaScript Rising Stars 2025 lists HTMX as a visible front-end framework ecosystem signal. State of JavaScript 2025 is survey context, not technical authority. HTMX has visible community momentum, but popularity does not prove architectural fit or agent preference.
"React is becoming obsolete" Rejected as factual wording Official React docs remain the technical authority. State of React 2025 is unofficial survey context only, unaffiliated with Meta, Vercel, the React team, or the React foundation. React remains a current tool for component-based interactive UIs; survey context does not replace official documentation.
"AI agents prefer HTMX" Source thesis / teaching interpretation only Cloud Codes source video thesis, not an independent benchmark. Agent-friendly front ends may benefit from readable markup, smaller state surfaces, and inspectable responses.

Public-safe boundary

Publication limits

Included

This is a public teaching artifact about front-end architecture tradeoffs. It uses public documentation, bounded source-thesis framing, and architecture judgment.

Excluded

No source packet, transcript, subtitle, media, screenshot, private source material, normalization handoff, or temp file is committed or reproduced. This is not legal, security, SEO, crawler, AI-agent, or professional advice.