Currently, the "name" of a field is used as both its key in the API JSON
and
its label in the UX of the CMS admin. This is confusing for content editors and results in clunky naming conventions for the API. For example, if I have a field for the label of a link in the site nav component, it might be named site_nav_link_label which works for both. But then suppose I sometimes have dropdown menus in the site nav. I create a condition with a Boolean field that when toggled to true, displays an extra text field for the dropdown label, which, when clicked on, opens the dropdown. Firstly, what to name the Boolean? Right now I have something like site_nav_show_dropdown, and the dropdown label is site_nav_dorpdow_label.
If I had the ability to have distinct field labels, I could name the Boolean site_nav_show_dropdown, but give it a label of "Show Dropdown?" and if I had descriptive text, I could write instructions like "To add a dropdown menu, choose True".
Most CMSs have this sort of functionality, since content editors tend to be computer-literate, but rarely are they developers. There are no plugins that really solve this problem.