![]() |
wisdom
|
Welcome to the Wisdom project documentation. This library provides minimal abstraction for a low level graphics. It is designed to be lightweight, efficient and extensible focusing on modern C++ standards and best practices with a lot of optimizations for best performance. Wisdom is built with a strong emphasis on extensibility and maintainability, making it suitable for a wide range of applications.
Wisdom follows a set of coding standards that is derived from complexitioes of implementation. The library is divided into core and extensions. Core library follows a strict procedural style, with focus on supporting C99 and C++11 standards, ensuring wide compatibility and adoption. The interfaces are generated with a custom generator, which ensures consistency across the API and allows for easy maintenance and updates. The code is documented using customized Doxygen, and we strive to keep the documentation up-to-date with the codebase. Generaor also creates documentation headers, writes inline documentation and provides boilerplate for API functions on C++. Basically it generates outer layer of the library, while the inner implementation is written by hand and can follow any style, as long as it is consistent within the implementation file.
Extension part is free of standards and is provided to extend functionality without affecting the core library. This allows for a lot of flexibility and creativity in the implementation of extensions, while still maintaining a clear separation of concerns between the core library and extensions.
Documentation from 25.8.2025 will adhere to the RFC 2119 guidelines for requirement levels. Latest statement can be found here: https://www.rfc-editor.org/rfc/rfc2119.html
The documentation is written in a way that explains behavior and not the state. It mimics the documentation style of Vulkan, where the focus is on describing the behavior of the library and its components, rather than just listing the features or capabilities. This approach allows for a more comprehensive understanding of how the each part of library works and how to use it effectively.
Some additional pages:
For questions, issues, or contributions, please refer to the project repository at https://github.com/Agrael1/Wisdom