| Check | Good sign | Smell |
|---|---|---|
| Anatomy | Parts are named and documented. | New features are attached wherever they fit visually. |
| Intent | Props describe meaning and behavior. | Props expose raw colors, pixels, and CSS details. |
| Defaults | Accessible behavior works by default. | Teams must remember focus, labels, roles, or contrast manually. |
| Combinations | Invalid states are prevented or discouraged. | Any prop can combine with any other prop. |
| Escape hatches | Advanced customization is explicit and documented. | Every consumer overrides styles differently. |
Useful API questions
- What product decision does this prop represent?
- Is this variant, state, size, or composition?
- Can the component prevent inaccessible output?
- What should be easy, and what should be intentionally hard?
- Does the API scale to the next five similar requests?