Unlike the theater, where the maxim “always leave them wanting more” is a common philosophy, when we create new apps, our goal is to give our users all the features they desire. In fact, nothing makes us happier than when our power users- those users that maximize our app’s potential- find new elements that they have been requesting. It’s time to give them the thing they didn’t even know they wanted: command palettes.
Benefits of the Command Palette
A command palette is a user interface (UI) element that aggregates commands in the form of a search bar. It provides users with a fast and powerful way of interacting with the entirety of an application. From the user’s perspective, it is a live-updating list of items that represent the multitude of actions, or commands, that they can perform within the app.
The era of the graphical user interface (GUI) has trained us to interact with our computers via point-and-click. However, with the scarcity of screen real estate, command palettes present a wonderful compromise between the cluttered, control-panel-esque layouts of old and the icon-filled panels of today’s applications.
In an ideal implementation, the command palette would be an omnipotent and omnipresent UI element within the application. It would also serve as a tool for discovering new features so that users don’t have to waste time digging through menus like they currently do when they get new devices and applications.
While this god-like command palette is not a realistic option (yet), it doesn’t mean you can’t build out an excellent command palette for your loyal power users. You can discover some great tips for building command palettes in the SUPERHUMAN blog.
Evolution of the Command Palette
The true origin of the command palette is hotly debated. However, most people agree that we can credit Sublime Text 2 for popularizing the feature.
However, Sublime Text’s command palette quickly rendered these obsolete. Gone was the era of toolbars cluttered with icons or searching in menu bars for the action you wanted to perform. Instead, the ctrl/cmd+shift+p shortcut that opened the command palette became the one shortcut to rule them all.
Since the release of Sublime Text’s command palette, other command palettes have been created. Apple’s Spotlight is a system-wide version of a command palette that is beneficial for non-coders. Due to its larger scope, it also doubles as a search bar.
Slack’s “jump-to” feature is another successful example of command palettes. In addition to the standard features of a command palette, Slack’s “jump-to” feature also includes commands.
As command palettes continue to gain popularity, more operating systems and applications will likely implement their own command palettes. Even the Windows terminal includes one now.
Caveats of Using the Command Palette
Having proselytized in favor of the command palette, here are some of their most significant caveats:
- The command palette tends to be a tool for the power user. It is important to acknowledge that most users are not as button averse as I am, and the rest of the UI should not be neglected in favor of this one method for navigating and interacting with applications.
- There is not currently an alternative for the command palette on mobile apps. However, some additional user experience (UX) research may fix this in the future.
- Building a command palette requires a larger development overhead, as every action must be considered as a command palette item.
Command palettes are not very common right now, but a recent surge in popularity could lead to high rates of adoption by even regular users. For now, it should be thought of as a treat for power users. And power users are good for business.