I'm developing a stand-alone, cross-platform desktop app for Windows, Mac, and GNU/Linux. I've read these ([1], [2]) questions and concluded that I'll have to cherry pick guidelines from all three HIGs as the end-users span across the three platforms with Mac users > Windows Users >> GNU/Linux users. I was thinking about using a platform-agnostic HIG, but struggled to find modern ones. The most complete one I found was this archaic style guide for WxWidgets from 2006.

While being very old, a lot of the guidelines still hold true 15+ years later. Does it make sense to follow this guide or is that ridiculous?

  • Will this be a web app bundled in a package that can be installed?
    – Andy
    Commented Feb 13, 2023 at 9:00

2 Answers 2


A unified HIG would have made sense during the era that wxWidgets (and Java, for that matter) formed in: Windows 98, Mac OS 9, OS/2, Gnome 1 and the K Desktop Environment 1 all had a very similar look and feel to them - quite grey and quite boxy.

In the modern day, it doesn't quite hold up anymore unfortunately. Most annoyingly in the question of which way round OK and Cancel goes, but also more fundamentally in which input devices are available. Windows laptops for example somewhat frequently have the ability to switch mouse+keyboard for a tablet experience.

So your process of cherry-picking from all platform-relevant HIGs you're designing for is generally the right way to go, though I'd like to throw in that you'll need to be aware for platform-specific incompatible HIGs which probably mean the app should change depending on which version is used.


The guidelines seem way too old to rely on them, even though they are written for cross-platform desktop applications.

If there are no cross-platform human interface guidelines that are not that old, it seems reasonable to follow Apple’s human interface guidelines. They are considered one of the best in the field and for the most part, can be used as general guidelines not specific for Apple interfaces.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.