Substance is my core library for C++ projects. It is a collection of utilities, data structures, and algorithms. It is intended to be used as a foundation for other projects.
Currently supported platforms and compilers:
- Windows (MSVC)
The roadmap is a rough outline of the features that are planned to be implemented. The list is not exhaustive and will be updated as the project progresses. The features are not listed in any particular order.
- Linux support
- More compiler support (Currently only MSVC is supported)
- Custom data structures (e.g. Vector, Map, etc.)
- Custom string implementation
- Full control over memory allocations
- Python 3.9 or above
- Visual Studio 2022 or Visual Studio Build Tools 2022 with the following components:
- Desktop development with C++
- MSVC v143
- Windows 11 SDK (10.0.26100.0 or above recommended, not tested with older versions)
After cloning the repository, run the following commands in the root directory (Choose the appropriate scripts for your OS):
# Windows
.\CLI.bat setup
This command will install the necessary dependencies and tools required to build the project. It will also generate the Visual Studio solution file.
If you encounter any issues with the build system, you can clean the workspace with the following commands:
# Windows
.\CLI.bat clean
This will remove all build artifacts, intermediate files, manually downloaded dependencies and tools. You need to run the setup script again to restore the workspace to a working state.
See LICENSE for more information.