What if instead of misinterpretable hand-wavey specs, we had concrete implementations in code of the core functionality? We might even package this up into an easy to use thing, which we could call a library.
But the UI is still very problematic. So we also make a base UI. Then, why bother with people reimplementing their own thing all the time? We add 99% of the functions everyone needs into the base UI.
You have built a client
