GNOME User Interface Design Principles

The HIG and the GNOME platform are reflective of the GNOME design tradition and philosophy, which has been informed by the project’s collective experience creating user-facing software for over 20 years.

HIG 和 GNOME 平台是 GONE 的设计传统和理念的反映,这是20多年来创早直面用户的软件的项目经验所提供的信息。

Designers and developers building for the GNOME platform are encouraged to familiarize themselves with our design philosophy, as this will enhance their ability to produce beautiful, effective, attractive, easy to use apps.


Design for People 服务于人的设计

People are at the heart of GNOME design. Wherever possible, we seek to be as inclusive as possible. This means accommodating different physical abilities, cultures, and device form factors. Our software requires little specialist knowledge and technical ability.

The drive to create accommodating software threads its way through each of our guiding principles.

人是 GNOME 设计的核心点。无论如何,我们选择尽可能地包含所有人。这意味着适应不同的物理行为、文化和不同厂商的设备。我们的软件要求很少的专业知识和技术能力。


Make it Simple 让它变得简单

The best apps do one thing and do it well. Often this requires having insight into the goals of your app, not just in functional terms but also how it will be used and fit into peoples’ lives. The principle of simplicity applies to each view and element of your app, as well as the app as a whole.

  • Resist the pull to try and make an app that suits all people in all situations. Focus on one situation, one type of experience.
  • Don’t overwhelm people with too many elements at once. Use progressive disclosure and navigation structures to provide a guided experience.
  • Frequently used actions should be close at hand, with less important actions being further away.

最好的APP只做一件事,并且做的很好。通常这要求深入洞察你APP的目标,不仅仅是功能方面,也要知道APP会被怎样使用和进入人们的生活中。 这些简单的原则适用你APP的每个视图和元素,以及一整个的APP。

  • 抵抗试图制作一个适应所有人在所有场景下使用的APP的诱惑。聚焦一种场景,一个类型的体验。
  • 不要一次性地有太多的元素把人淹没了。使用渐进的显示和导航结构来提供一个引导的体验。
  • 频繁使用的动作应该靠近手,很少、不重要的动作应该离远一点。

Reduce User Effort 降低用户的使用成本

It is our job as software creators to reduce the amount of work and effort that people have to expend. This often means anticipating user needs, which requires having insight into the kind of situations and people your app is for.

  • If something can be done automatically, do it automatically.
  • Try to minimize the number of steps required to perform a task.
  • Reduce the amount of information that people need to remember while using your app (tabs, recently used lists, and automatic suggestions are all effective techniques in this respect).
  • Keep text short and to the point.


  • 如果一些事情能够自动地处理,那就让它自动处理。
  • 试着让执行一个任务的步骤最小化。
  • 减少人们在使用你APP的时候需要记住的信息量,例如Tab标签、最近使用的列表和自动建议,在这个方面都是有效的技术。
  • 保持文本的简短,切中关键。

Be Considerate 更贴心一点

Anticipating user needs goes beyond providing useful functionality. It also requires thinking about what people don’t want from your app.

  • Try to anticipate and prevent mistakes.
  • Allow destructive actions to be undone instead of asking for confirmation.
  • Respect people’s time and attention. Don’t interrupt or distract them unnecessarily.


  • 试着预期和阻止错误的发生。
  • 允许取消破坏性的动作,而不是询问用户的确认。
  • 尊重人的时间和注意力。不要在不需要的情况下打断和干扰他们。