These are the guidelines and best practices on when and how to provide users with feedback as they interact with your plugin.
- Permission dialogs
- Loaders and Progress Indicators
Provide users with feedback as they interact with your plugin. This can be alert and success messaging, permission dialogs, or loaders or progress bars to let them know that something is running in the background.
Here is a guide to help you determine where to render plugin messages:
Open this image in a new tab in your browser in order to zoom in on it.
Use alert messaging whenever the plugin cannot perform the intended task, dialogs are persistent until dismissed
Have a clear header that describes the error
Explain what error was encountered and give a clear actionable solution. Also, avoid blaming the user or the application.
Include at least one modal dismissal button to allow the user to dismiss/close the modal
To help communicate critical information for an error you can include a warning icon next to the header
If a plugin has a help page, consider adding it to the error modal dialog.
Provide image/GIF example as part of the dialog, to help users understand the actionable solution
In the alert messages use language that is easy to understand for the user.
Use success messaging whenever the plugin successfully completes a task and has no visual output on the canvas.
Have a clear header for the dialog.
Explain what the plugin successfully completed, if it is not visually apparent to the user.
Include at least one modal dismissal button to allow the user to dismiss/close the modal.
If a plugin generates output that the user needs to complete a workflow, then the plugin needs to provide that information to the user through an interface.
In use cases like these, the plugin output can be shown in the interface, copied onto the clipboard, populated on the document or generate a file.
Copied onto the clipboard - the plugin can add copy to the clipboard and provides the user with instructions through the interface.
Require users to go into the developer console to complete an action.
Use permission dialogs when being destructive or making modifications.
Have a clear header for the dialog.
Explain the destructive action or modification and ask for the user’s permission
Include a modal dismissal button to allow the user to cancel/close the modal and a negative button (red) to highlight that action.
Esc key or Enter key Dismisses the dialog when the “Cancel” button is in focus
Loaders and Progress Indicators#
Let the user know when something is happening in the background in the plugin interface.
Progress bars show the progression of a system operation: downloading, uploading, processing, etc., in a visual way. They can represent either determinate or indeterminate progress.
Progress circles show the progression of a system operation such as downloading, uploading, processing, etc. in a visual way. They can represent determinate or indeterminate progress.
Operation failed to complete
Error dialog - when a plugin can’t complete an operation, render an error dialog to let the user know the operation failed and why it failed.
Network connectivity issue
Information dialog - if the plugin is unable to connect to the internet to complete an action, then use an information modal dialog to communicate that to the user.
Unable to share
“An error occurred while sharing your project. Please verify the email. address and try again”.
“Please connect to WiFi to sync your tasks to your product management tool”.
Panel UI messaging#