Some system behaviors and settings may need to change depending on the user.
Settings should be implemented when there is functionality and behaviors that may need to be changed to meet a user’s needs, such as notification settings, account settings, and other system behaviors.
Avoid the urge to “just make it a setting”. Only add a setting if:
Depending on the application type, settings can appear as a dedicated page or as a modal dialog. The complexity of the settings panel can vary drastically between applications.
The settings panel can be composed of:
Use tabs if there are 5 or less sections of settings without nesting, otherwise use tree navigation. Hierarchical tree navigation is preferred over nested levels of tabs and improves discoverability.
There should be a Save changes
button on every panel with savable changes. The buttons should be disabled if there have not yet been any changes. If the user attempts to navigate away with unsaved changes, the application or browser should ask them to confirm.