A modular cross-platform C++ framework for creating 3D graphics applications using C++23 and Vulkan.
Important
Note that Portal Framework is still in its early stages of development.
Everything is subject to change.
To get more information regarding the state of the project, see The Docs
- Windows 11 - Clang 20+ (recommended) or MSVC 17+
- macOS 15+ (Sequoia or later)
- Linux - Clang 20+ or GCC 14+
The portal-tool is the recommended way to create new Portal Framework projects.
Requirements: Python 3.12+, CMake 3.30+, Ninja, Git, C++23 compiler
pip install portal-tool
portal-tool install # Install platform dependencies
portal-tool init # Create a new projectNote: Currently
portal-toolworks on Windows only. Linux and macOS are untested.
cmake --preset ninja-multi
cmake --build --preset debugContributions are welcome! Please see the Contributing Guide for:
- Code style guidelines
- Build and test instructions
- Documentation standards
- Pull request process
This project is licensed under the MIT License - see the LICENSE file for details.
As a personal project and a learning experience, I have limited the usage of generative AI for the bulk of the programming.
Generative AI was used in the following areas:
- Writing testing boilerplate code
- Baseline for API documentation
- Debugging assistance
- Portal Tool – The repository for the
portal-toolcli. - Portal Vcpkg Registry – The vcpkg registry for Portal Framework.

