Component Boundary Cards
Use component and state heuristics to make small frontend architecture decisions.
Objection It is only used once, so it should stay in the page component. A 120-line cancellation dialog has its own validation, pending state, and focus behavior. Your line Reuse is not the only reason to split. This dialog has its own behavior, tests, and accessibility contract. Leaving independent behavior buried makes the page component harder to reason about. The response uses responsibility and testability as boundary criteria, not reuse alone. State decision Derived value or source state? If it can be computed from existing props or state, storing it invites drift. When should state move up? When multiple components…
Sign up free — one personalized lesson every day, matched to your role and goals.
Already have an account? Sign in