Corn-UI allows developers to create user interfaces for their games using web-like languages.
- Compatible with Windows, macOS, and Linux
- XML parsing for UI widgets
- Corn-CSS specifically designed for styling UI widgets
- JavaScript (ES6) support for dynamic effects
- MSVC (Windows) / MinGW-w64 13.1.0 (Windows) / Clang (macOS) / GCC (Linux)
- Corn Game Engine
- (Optional) CMake: Only if building from the source. Make sure it is in PATH.
- (Optional) Conan: Only if building from the source. Make sure it is in PATH.
- (Optional) JSON for Modern C++: Only if building from the source (installed in conan).
- (Optional) libxml2: Only if building from the source (installed in conan).
- (Optional) QuickJS: Only if building from the source (installed in conan).
- (Optional) GoogleTest: Only if building the test cases (installed in conan).
To begin, clone the repository to your local machine using:
git clone https://github.com/cty012/corn-ui.git
cd corn-uiEnsure you have CMake and Conan installed and added to your PATH.
Check their respective websites for installation and setup instructions.
-
Follow the instructions to build and install the Corn Game Engine. Retrieve the library in the
distfolder and place it in thedepsof this project. -
Run the following command, replacing
<profile>with your own Conan profile:conan install . -pr=<profile> -of=conan/<profile> -b=missing cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=conan/<profile>/conan_toolchain.cmake cmake --build build --config Release
After building, the compiled dynamic library will be available in the
builddirectory.
Install the library by running the following command in the project root:
cmake --install buildThis will install the library into the dist folder.
For both debug and release builds, repeat the command with the respective build folders.
The documentation of this project is generated using Doxygen. To generate the documentation, install Doxygen and run the following command:
cd docs && doxygen- CMake - Licensed under BSD 3-Clause License
- Conan - Licensed under MIT License
- JSON for Modern C++ - Licensed under MIT License
- libxml2 - Licensed under MIT License
- QuickJS - Licensed under MIT License
- GoogleTest - Licensed under BSD 3-Clause License