A Cross-Platform Vulkan-Based Graphics Library for Lua & C++
Platform Support: Windows ✅ | Android ✅ | macOS ✅
---Follow these steps to build the JkrGUI engine on your platform. If it breaks, it’s probably your fault (or Vulkan’s).
- Go to https://vulkan.lunarg.com/sdk/home
- Download and install the Vulkan SDK for your OS (Windows/macOS/Linux)
- Make sure the
VULKAN_SDK
environment variable is set correctly
(e.g.,C:/VulkanSDK/1.3.275.0
)
git clone https://github.com/theanimatorspal/jkrgui.git
cd jkrgui
Create a file named CMakeConfig.cmake
inside the jkrgui/
folder with the following content:
set(CMAKE_JKRGUI_DIR <path-to-jkrgui-folder>)
set(VULKAN_SDK <path-to-vulkan-sdk>)
set(VULKAN_VERSION <vulkan-version>)
Example:
set(CMAKE_JKRGUI_DIR D:/Projects/jkrgui)
set(VULKAN_SDK C:/VulkanSDK/1.3.275.0)
set(VULKAN_VERSION 1.3.275.0)
cmake -B out/build/VS -G "Visual Studio 17 2022" -DCMAKE_BUILD_TYPE=Release
cmake --build out/build/VS --config Release
brew install ninja
cmake -B out/build/Ninja -G Ninja -DCMAKE_BUILD_TYPE=Release
- Install the Android NDK (via Android Studio or command line)
- Set the
ANDROID_NDK_HOME
environment variable - Then run:
cmake -B out/build/Android \
-DCMAKE_TOOLCHAIN_FILE=%ANDROID_NDK_HOME%/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=arm64-v8a \
-DANDROID_PLATFORM=android-24 \
-DCMAKE_BUILD_TYPE=Release
After compiling, find your built executable here:
out/build/<Preset>/jkrgui/jkrgui(.exe on Windows)
If you want to run jkrgui
globally from any terminal:
- Windows: Add the path to your Environment Variables →
PATH
- macOS/Linux: Add it to your
.bashrc
,.zshrc
, or equivalent shell config
export PATH=$PATH:/your/path/to/jkrgui
💡 Pro Tip: If something goes wrong, blame the SDK, not the code.
A visualizer built using JkrGUI to demonstrate how simulated annealing can optimize a neural network's learning process.

The first 3D game developed with JkrGUI!
A third-person air-gun shooting game where the player must push a cube off a platform using physics-based mechanics.
🕹️ This game showcases JkrGUI's 3D rendering and physics capabilities.
A HFT simulator
↑ Sample UI of traders ruining the simulated economy
A physically-based rendering (PBR) test showcasing realistic lighting and material effects powered by Vulkan.

📦 Triyamik
A simple test project used to evaluate frame presentation, rendering loop performance, and cross-platform windowing using the JkrGUI backend.
🧠 Want to contribute or build your own game or visualizer?
Explore the source code, fork the repo, and start building with Vulkan-powered graphics for Lua and C++!