74 lines
1.9 KiB
Markdown
74 lines
1.9 KiB
Markdown
# UI – Versus UI
|
||
VUI (short for Versus UI) is a lightweight and modern UI framework written in C++. It provides a clean and intuitive API for building native user interfaces with a focus on simplicity, performance, and extensibility.
|
||
|
||
Inspired by RGFW and GLFW
|
||
|
||
> ![Warning]
|
||
> Work in Progress
|
||
> VUI is currently in early development and is not yet production-ready.
|
||
|
||
|
||
# ✨ Features
|
||
- Basic windowing support
|
||
- Event handling (keyboard, mouse, etc.)
|
||
- Modular and easy-to-use API
|
||
- Lightweight and efficient
|
||
|
||
# 🖥️ Platform Support
|
||
- ✅ Windows (currently supported)
|
||
- ⏳ Linux (planned)
|
||
|
||
> macOS and other platforms may be considered in the future.
|
||
|
||
# 🚧 Project Status
|
||
VUI is a heavy Work In Progress. Many components are still being developed, and APIs may change frequently. Your feedback and contributions are welcome to help shape the future of the project!
|
||
|
||
# 📦 Getting Started
|
||
> Note: This project currently targets Windows only.
|
||
|
||
Prerequisites
|
||
- A C++23 (or later) compatible compiler
|
||
- CMake 3.16+
|
||
|
||
# Build Instructions
|
||
```bash
|
||
git clone https://git.vstz.dev/vstz/VUI.git
|
||
cd vui
|
||
mkdir build && cd build
|
||
cmake ..
|
||
cmake --build .
|
||
```
|
||
|
||
# 🛠️ Usage
|
||
Here’s a simple example of using VUI:
|
||
|
||
```cpp
|
||
#include <vui/VUI.h>
|
||
|
||
int main() {
|
||
VUI::WindowManager::Create(800, 600, "Example Window");
|
||
while (VUI::WindowManager::HasOpen()) {
|
||
VUI::WindowManager::Update();
|
||
double dt = VUI::GetDeltaTime();
|
||
// ...
|
||
if (VUI::Input::IsKeyPressed(VUI::KeyCodes::ESCAPE)) {
|
||
break;
|
||
}
|
||
}
|
||
return 0;
|
||
}
|
||
```
|
||
More examples and documentation will be added as the project matures.
|
||
|
||
# 📅 Roadmap
|
||
- Basic window creation
|
||
- Event system (keyboard/mouse)
|
||
- Linux support
|
||
- Layout system
|
||
- Widgets (buttons, sliders, etc.)
|
||
- Theming & styling
|
||
- High-DPI support
|
||
|
||
# 🤝 Contributing
|
||
Contributions are welcome! If you're interested in helping build VUI, feel free to open issues, submit pull requests, or discuss ideas.
|
||
|