<story><title>Writing GUI apps for Windows is painful</title><url>https://tulach.cc/writing-gui-apps-for-windows-is-painful/</url></story><parent_chain><item><author>Aurornis</author><text>This is a good overview of some of the options, but the author’s specific requirements push it in a specific direction that eliminates a lot of options.&lt;p&gt;Specifically, the requirement for completely custom GUI styling without writing his own render functions means it’s really a task of selecting easy, customizable GUI libraries rather than generic GUI work.&lt;p&gt;The requirements to be self-contained executables and under a 40MB limit also rule out a lot of options. The author admits that Qt could have met these requirements but the open-source licensing part wasn’t compatible with his goals and he didn’t want to pay for a license.&lt;p&gt;If you relax the requirements to tolerate some dependencies, allow larger download sizes, or to simply use built-in Windows GUI controls the situation is very different.&lt;p&gt;For writing a lightweight, completely custom GUI with no external dependencies and permissive licensing I could have guessed ImGui would be the answer before I started reading.</text></item></parent_chain><comment><author>eschaton</author><text>If instead of insisting on custom UI styling the author just used the system UI, they could probably build a pretty straightforward Windows application. It’s the scourge of “brand identity” that has people thinking graphical applications are hard.&lt;p&gt;Same on the Mac: If you want to build a Mac application, your best bet will be AppKit or SwiftUI and using system controls. And when the OS updates your application will either update with it, or need only minor tweaks and a rebuild to look good.</text></comment>
<story><title>Writing GUI apps for Windows is painful</title><url>https://tulach.cc/writing-gui-apps-for-windows-is-painful/</url></story><parent_chain><item><author>Aurornis</author><text>This is a good overview of some of the options, but the author’s specific requirements push it in a specific direction that eliminates a lot of options.&lt;p&gt;Specifically, the requirement for completely custom GUI styling without writing his own render functions means it’s really a task of selecting easy, customizable GUI libraries rather than generic GUI work.&lt;p&gt;The requirements to be self-contained executables and under a 40MB limit also rule out a lot of options. The author admits that Qt could have met these requirements but the open-source licensing part wasn’t compatible with his goals and he didn’t want to pay for a license.&lt;p&gt;If you relax the requirements to tolerate some dependencies, allow larger download sizes, or to simply use built-in Windows GUI controls the situation is very different.&lt;p&gt;For writing a lightweight, completely custom GUI with no external dependencies and permissive licensing I could have guessed ImGui would be the answer before I started reading.</text></item></parent_chain><comment><author>elpocko</author><text>Dear ImGui is for development&amp;#x2F;debug tools, not an UI for the end-user. It&amp;#x27;s great for small projects as long as you don&amp;#x27;t care about accessibility, or proper keyboard support, or adherence to standard UI conventions, or support for devices without GPUs, proper font rendering, etc. ...</text></comment>