A free, open-source C++ framework for building native-looking GUI applications across Windows, macOS, and Unix platforms.
wxWidgets is a free and open-source cross-platform C++ framework for writing advanced GUI applications that use native controls on each supported operating system. It solves the problem of developing desktop applications that need to run on Windows, macOS, and Unix platforms while maintaining a native appearance and feel. The framework abstracts platform differences in both GUI and non-GUI areas, allowing developers to maintain a single codebase.
C++ developers building desktop applications that must run on multiple operating systems (Windows, macOS, Unix) and require native look-and-feel. It's suitable for both open-source and commercial projects.
Developers choose wxWidgets because it provides true native controls on each platform, extensive documentation with numerous examples, and permissive licensing that allows static linking in commercial applications without source distribution. Its long-standing stability and cross-platform abstraction make it a reliable choice for complex desktop applications.
Cross-Platform C++ GUI Library
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Applications use the platform's native widgets on Windows, macOS, and Unix, ensuring seamless integration with each OS's UI standards, as emphasized in the README's focus on native controls.
Modified LGPL allows static linking without source distribution, making it free for both open-source and commercial use, explicitly stated in the licence section.
Comes with comprehensive documentation and over a hundred examples, aiding learning and productivity, as highlighted in the README's description.
Abstracts GUI and non-GUI differences across Windows, macOS, and Unix, enabling a single codebase for multiple platforms, with support detailed for various compilers and OS versions.
Building requires consulting platform-specific documentation (e.g., docs/gtk/install.md, docs/msw/install.md), which can be cumbersome and error-prone for newcomers or cross-platform setups.
Lacks support for web or mobile development, restricting its relevance in modern multi-platform projects that need iOS, Android, or web targets.
Compared to frameworks like Qt, wxWidgets has a smaller community and fewer third-party tools, which may affect long-term support, library availability, and innovation.
Maintains a legacy branch for C++98 compatibility, which can lead to code bloat and slower adoption of modern C++ features, though C++11 is supported in the main branch.