Framework has slots for your code
abstractions should provide escape hatches to work around restrictions for minimizing frustration
The cost of convenience — surma.dev
It is tempting to build abstractions so developers have to do less and build more. However, this can easily end up causing frustrations with developers if not done right.