The problem statement
Building reusable hooks and components can be tricky
Just like any other kind of abstraction, you can easily find yourself captive to its maintenance
Whether it's the dreaded "apropcalypse" of a component with tons of props, or a custom hook with too many options, it's not fun for maintainers or users alike.
Inevitably, the incidentally-abstracted "reusable" React hooks and components will ultimately slow you down or be abandoned for duplication. It doesn't have to be like this.