# Human interface guidelines

Human interface guidelines (HIG) are software development documents which offer application developers a set of recommendations. Their aim is to improve the experience for the users by making application interfaces more intuitive, learnable, and consistent. Most guides limit themselves to defining a common look and feel for applications in a particular desktop environment. The guides enumerate specific policies. Policies are sometimes based on usability studies of human–computer interaction, but most reflect the platform developers' preferences.
The central aim of a HIG is to create a consistent experience across the environment (generally an operating system or desktop environment), including the applications and other tools being used. This means both applying the same visual design and creating consistent access to and behaviour of common elements of the interface – from simple ones such as buttons and icons up to more complex constructions, such as dialog boxes.
HIGs are recommendations and advice meant to help developers create better applications. Developers sometimes intentionally choose to break them if they think that the guidelines do not fit their application, or usability testing reveals an advantage in doing so. But in turn, the organization publishing the HIG might withhold endorsement of the application. Mozilla Firefox's user interface, for example, goes against the GNOME project's HIG, which is one of the project's main arguments for including GNOME Web instead of Firefox in the GNOME distribution.

## Scope

Human interface guidelines often describe the visual design rules, including icon and window design and style. Much less frequently, they specify how user input and interaction mechanisms work. Aside from the detailed rules, guidelines sometimes also make broader suggestions about how to organize and design the application and write user-interface text.
HIGs are also done for applications. In this case the HIG will build on a platform HIG by adding the common semantics for a range of application functions.

## Cross-platform guidelines

In contrast to platform-specific guidelines, cross-platform guidelines aren't tied to a distinct platform. These guidelines make recommendations which should be true on any platform. Since this isn't always possible, cross-platform guidelines may weigh the compliance against the imposed work load.

## Examples
### Linux, macOS, Unix-like

* Elementary OS Human Interface Guidelines (Old link Archived 2018-02-17 at the Wayback Machine)
* GNOME Human Interface Guidelines
* KDE Human Interface Guidelines
* Apple Human Interface Guidelines
* OLPC Human Interface Guidelines
* Ubuntu App Design Guides
* Xfce UI Guidelines
* Motif and CDE 2.1 Style Guide
* (Classic) Macintosh Human Interface Guidelines

### Programming languages

* Java Look and Feel Design Guidelines, and Advanced Topics (2001 - Can't be accessed anymore, but can archived in Wayback Machine)

### Portable devices

* Android Design
* Designing for Apple watchOS
* Apple iOS Human Interface Guidelines
* Apple iPadOS Human Interface Guidelines

### Microsoft Windows

* Windows User Experience Interaction Guidelines (for Windows 7 and Windows Vista)
* Microsoft Fluent Design System (for Windows 10/11-based devices)
* Design library for Windows Phone

### Miscellaneous

* Eclipse User Interface Guidelines (2007)
* wyoGuide, a cross-platform HIG (wxWidgets)
* ELMER (guidelines for public forms on the internet)
* Haiku Human Interface Guidelines
* HarmonyOS Design Guidelines
* OpenHarmony Universal Design Guidelines