1 min lesson
Not breaking your consumers
Rebuild the main list in "Not breaking your consumers", then say what each item changes.
Step 1 of 2
Not breaking your consumersthe part of systems thinking the JD names
- Add, don't mutate: new optional props with safe defaults keep existing call sites working.
- Deprecate with a path: warn in dev, document the replacement, give a migration window before removal.
- Treat the prop API as a contract: renaming or retyping a required prop is a breaking change, even if the visuals are identical.
Interview move
When asked to design a component, sketch the API first - its props and composition - and say why a consumer would reach for it. Designing the call site before the internals is the systems-thinking signal the team is grading and it doubles as the cleanest way to handle a vague prompt.