About this project

xtd (pronounced "extend") is a free, open-source, modern C++20/23 framework designed to create console (CLI), forms (GUI resembling WinForms), and unit test (xUnit) applications and libraries. It emphasizes high portability, supporting Windows, macOS, Linux, iOS, Android, FreeBSD, Haiku, and SerenityOS. Key Features: - **Modern C++20/23**: Uses efficient, modern C++ standards, RAII programming idioms, and full integration with the C++ Standard Library. - **.NET-like API**: Provides an API close to .NET but with a native C++ approach, making it intuitive for developers familiar with Microsoft's ecosystem. - **Multiplatform GUI**: Supports building native-looking GUI controls and dialogs, with optional CSS style sheets for customization. - **Composed Libraries**: Structured into modular libraries: - `xtd.core`: Core system functionality, classes, interfaces, and value types. - `xtd.drawing`: GDI+ graphics, 2D/vector imaging, printing, and typography. - `xtd.forms`: GUI form creation and controls for Windows, macOS, and Linux. - `xtd.tunit`: A unit testing framework inspired by Microsoft's C++ unit testing framework. - **Extensive Examples**: Includes over 950 examples to help users get started with console apps, GUI forms, coroutines, and more. - **Build System**: Uses CMake for cross-platform building and provides the `xtdc` command-line tool for easy building, running, and packaging. The project is actively developed, with continuous integration builds across multiple operating systems and compilers (Clang, GCC, MSVC). It is licensed under the MIT License, making it suitable for both open-source and proprietary projects.