Some of my thoughts on palettes: The principle maxim is: Maximize the functionality; minimize the space.
Since screen real estate is valuable there are a few things to be wary of. Don't use a lot of nonfunctional decoration on the palette, or expansive spacing. Don't use a huge billboard of symbols if you can avoid it. Don't use permanent space for something that is infrequently used. Minimize any changes to a user's Mathematica Palettes menu.
Over the years I have evolved a palette design that I feel is useful for moderate size applications with packages, or for convenient use of some related subset of Mathematica commands. It is not useful for Mathematica as a whole because there are just too many commands.
For these palettes I have chosen as the most useful information: 1) An overview of the routines available; 2) Links to the documentation for the application and individual routines; 3) Paste buttons providing labeled templates for each of the commands.
As an aside, palettes can be added to the Mathematica Palettes menu. If you follow the prescription for writing applications they can be put in the FrontEnd/Palettes folder of the application. If you have multiple palettes it is useful to add an extra folder with your application name and then put all the palettes in that folder. Then all your palettes will appear on the Mathematica menu under one entry, won't be scattered all over the user's Palettes menu and won't clutter it.
I have attached two palettes. One is a UnitsHelper Advanced Palette for a UnitsHelper application that I have to provide more convenient usage of Mathematica Units. There are also additional application routines and documentation which I am not providing here, but there is plenty enough to see how the palette works. And it does have access to all the Mathematica routines and documentation as well as relevant NIST pages on units. The second palette is for the Mathematica Geometry routines and should be fully functional. You could open these to explore with a Mathematica notebook.
There are three space-saving devices that I find most useful. 1) Openers to group various functionalities; 2) Dropdown ActionMenus containing groupings of functions and routines or containing a list of Help links for the routines; 3) Tooltips on the dropdown menus that give a compact list of the routines in the menu or ancillary information. Also, the palettes have the standard Size button on the frame so a user could make the palette smaller, according to how good his eyesight is, or only enlarge it when using it.
Most of these elements are present in the Basic Math Assistant palette although it is directed more to beginner or basic use of Mathematica. It does use a fair number of 'billboard displays' (Do we really need to punch in digits from the palette when they are already available at two places on most keyboards?) and only has direct help links to overall tutorials and not individual function pages. The palettes I'm showing are more appropriate for a set of several hundred commands from an application or as a related subset of Mathematica.
The following describes the UnitsHelper Advanced Palette.
The top button is a dropdown menu to directly load the application or paste the load statement (much the better choice). The second, Documentation, button gives access to the UnitsHelper documentation (not available here) and the WRI guide and tutorial pages. It also gives links to various NIST pages.
The Units and Prefixes section gives the various System, Prefixes and units organized into groups. The SIPrefixes for example gives a list of the standard prefixes annotated with their numerical values. For each of the dimensional unit groupings two dropdown menus are provided, the first ordering the units by magnitude and the second alphabetically. The items, of course, paste the unit into the notebook.
The Physical Constants sections just gives the constants alphabetically.
Skipping to the Wolfram Units Routines we see the method used for displaying routines. The "?" dropdown gives links to the Help pages for each of the routines. The group heading has a tooltip giving a compact list of the routines in that group, When the dropdown menu is opened paste buttons are provided for each of the routines. A button is generally provided for each overloaded version of the routine.
The second palette, Geometry Palette, for the Mathematica Geometry routines, can be explored for yourself.
Attachments: