Human interface guidelines (HIG) are software development documents that offer
application developers a set of recommendations. Their aim is to improve the
experience for users by making application interfaces more consistent and
hence more intuitive and learnable.
Learn more about the philosophy behind the KDE HIG
- Core usability goals, Use cases / User requirements, Task aggregation
- Personas, Scenarios, Usability criteria, Feature list
- Provide a menu bar for every standard application.
- Keyboard Access
- Use a group box to arrange associated controls.
- Use a panel for arrangement of controls without a caption.
- Allow users to resize aligned groups by placing a splitter between the groups.
- Use a list view to show some items out of one category.
- Use a tree view to show items with a single, natural, hierarchical categorization.
- If you really need to create your own widget follow the guidelines for custom controls.
Editing and Manipulation
- Use radio buttons for 1 selection out of a few items.
- Use one or more check boxes for clear options or to select items out of a small number of options.
- Use a drop-down list for selection of 1 out of a small number of items.
- Use a combo box to select 1 out of a small number of items where users should be able to add items.
- Use a list view to select 1 singular item out of a potentially big list.
- Apply the dual list pattern for several selections out of a large number of (multiple) items.
- Provide a line edit to enter one line of text.
- Provide a text edit to enter multiple lines of texts.
- Consider to provide inline editing with complex views.
- Use a spin box for numerical input within a range and with fix steps.
- Use a slider for arbitrary changes within a defined range.
- Apply the slider and spin box pattern for numeric input with both large changes and precise control.
- Use Date and Time Pickers for formatted input of datum, time of day, or periods etc.
- Provide tool-tips for user driven information.
System triggered notification
- Provide a message panel to inform users about non-critical problems.
- Use a notification as system-triggered message to acknowledge about events out of the current context.
- Show a progress indicator for lengthy actions.
- Show a modal message dialog if the processing has reached an unexpected condition that needs interaction.
- Support the user by an elaborated interface or per help system.
- Default and minimal size
- Carefully place control according the KDE alignment style.
- Do not use color as primary method of communication.
Didn't find what you were looking for?
A guide to the guide can be found at the about page.
Our Human Interface Guidelines are a work in progress and we need your help. Visit the Contributing page to report problems or get involved.
Content is available under Creative Commons License SA 4.0
unless otherwise noted.