Browse by type
Visage is a GPU-accelerated, cross-platform C++ library for native UI and 2D graphics. It merges the structure of a UI framework with the features of a creative graphics libraries.
#include <visage/app.h>
int main() {
visage::ApplicationWindow app;
app.onDraw() = [&app](visage::Canvas& canvas) {
canvas.setColor(0xffff00ff);
canvas.fill(0, 0, app.width(), app.height());
};
app.show(800, 600); // Opens as 800 x 600 pixel window
app.runEventLoop(); // Runs window events. Returns when window is closed.
return 0;
}
Event Normalization
Cross-platform support for keyboard and mouse input normalization.
Window Normalization
Cross-platform support for opening and handling windows.
Text entry
Unicode text entry with multi line text editing
✨ Emojis ✨
If you're into that kind of thing 🤷
Partial Rendering
Redraws only the dirty regions for optimal performance.
Fluid motion
New frames are displayed at the monitor's refresh rate and animations are smooth
Automatic Shape Batching
Automatically groups shapes for efficient GPU rendering.
Blend Modes
Supports blending layers with additive, subtractive or by drawing a custom mask for the UI to pass through
Shaders
Write shaders once and transpile them for Direct3d, Metal and OpenGL
Included Effects
Real-time effects such as large blur and bloom
Pixel Accuracy
Access to device pixel size ensures precise rendering without blurring.
$ claude mcp add visage \
-- python -m otcore.mcp_server <graph>