
Build a React app with AI by defining the user flow, state transitions, and component responsibilities before asking for screens. Pin the project setup and library versions, since generated examples may target different conventions. Start with one interactive path that can be tested from input to visible result.
List loading, empty, success, validation, permission, and failure states. Give the agent the data contract and identify which state belongs locally, remotely, or in the URL. Ask for a component map and a small implementation plan. Build semantic markup first, then styling. Keep side effects at clear boundaries and avoid adding global state or a new component system without a concrete need. Add behavior tests around user actions and accessible names, then run linting, types, tests, and the production build. Inspect dependency changes and browser output.
Judge the structure by changeability. Can one requirement change without editing unrelated components? Are repeated patterns truly the same? Can another developer trace data and errors? A visually complete screen with hidden state bugs is not a finished React feature.
Use AI for scaffolding, focused refactors, tests, and accessibility checks while retaining human control over product behavior and architecture. Once the first path works across all states, expand by copying proven boundaries rather than generating the entire app in one prompt.
