david-vanderson / dvui
git clone https://github.com/david-vanderson/dvui.git
v0.5.0 · 9d ago
🔥 on GitHub Trending today
Immediate-mode GUI toolkit written in Zig for full applications or debug overlays inside existing apps and games.
Why you might care
Lets Zig developers build whole desktop UIs or drop a debugging HUD onto an existing app or game. Ships with multiple backends (SDL2/SDL3, Raylib, DX11, GLFW, wio, Web) and includes examples for each.
+2
stars, 24h · #9,854
+~12
stars, 7 days · #10,802
+50
stars, 30 days · #12,231
1.7k
★ total · +1% this week
151
forks · 102 open issues
Star history (as recorded here)
LanguageZig
License—
Created2022-05-15 (4y ago)
Last pushtoday
Watchers14
OwnerUser
Seen on GitHub Trending
- 2026-10-23 — #9 daily in zig · +1 ★
- 2026-10-22 — #15 monthly in zig · +50 ★
- 2026-10-21 — #15 monthly in zig · +48 ★
- 2026-10-20 — #15 monthly in zig · +47 ★
Links
- GitHub: github.com/david-vanderson/dvui
- Homepage: https://david-vanderson.github.io/
- Releases · Issues · Hacker News mentions
README excerpt
# DVUI — Immediate Zig GUI for Apps and Games Zig GUI toolkit for whole applications or debugging windows in existing apps/games. Tested with Zig v0.17.0 (for Zig v0.16.0, use tag v0.5.0). Homepage · Demo · Docs · Devlog ## Examples `zig build sdl3-app` * sdl3 backend, dvui handles mainloop * good place to start, try changing frame() inside ./examples/app.zig * see Getting Started Backend As app dvui handles main loop app.zig Standalone you control main loop *-standalone.zig On top debug HUD on existing app/game *-ontop.zig SDL3 sdl3-app sdl3-standalone sdl3-ontop SDL3GPU Rendering via SDL GPU todo sdl3gpu-standalone sdl3gpu-ontop SDL2 sdl2-app sdl2-standalone sdl2-ontop Raylib C API raylib-app raylib-standalone raylib-ontop Raylib Bindings raylib-zig raylib-zig-app raylib-zig-standalone raylib-zig-ontop DX11 dx11-app dx11-standalone dx11-ontop GLFW glfw-app todo glfw-opengl-ontop wio OpenGL on wio wio-app wio-standalone wio-ontop Vulkan on wio wio-app -Drenderer=vulkan wio-standalone -Drenderer=vulkan wio-ontop -Drenderer=vulkan pugl OpenGL on pugl pugl-app pugl-standalone none Web web-app none none `dvui-demo` is a template repository that also includes these examples. See Getting Started. ### Docs - `zig build docs -Dgenerate-images` - Load `./zig-out/docs/index.html` - Online Docs ## Featured Projects The following projects use DVUI: - Fizzy - Pixel art editor - Graphl Visual Programming Language Demo - recastnavigation - Recast/Detour Tooling - Podcast Player - Graphical Janet REPL - FIDO2/ Passkey compatible authenticator implementation for Linux - QEMU frontend - File explorer for Altair 8800 disk images - Kanji flashcard app - Azem - WIP micro-mouse simulator / maze solver - Demo - Fighting game scoreboard overlay Discuss yours on: - Zig Discord `#dvui` or `#dvui-help` - DVUI GitHub Discussions ## Feature Overview - Immediate-mode API): - see Design - Processs every input event - suitable for low frame rate situations - Appropriate for - whole UI (`*-app` examples) - debugging on top of existing application - see Ontop-Floating-Windows - Backends - SDL2 and SDL3 - Web - Raylib (C) - Raylib (Zig) - DX11 - OpenGL + GLFW - wio - TinyVG icons - `zig-lib-svg2tvg` - more icons at `zig-lib-icons` - Raster images - `stb_image` - Fonts - FreeType - `stb_truetype` - Touch - selection draggables in text entries - pinch-zoom scaling - Accessibility: - AccessKit, enabled by adding flag `-Daccesskit` to `zig build` - see Accessibility - Native file dialogs - `tinyfiledialogs` - Animations - Themes - FPS throttling - see FPS-Throttling Further reading: - Implementation details for how to write and modify container widgets: - `readme-implementation.md` ## Getting Started `dvui-demo` is a template repository * `build.zig` and `build.zig.zon` reference dvui as a zig dependency * includes all the examples Alternatively: 1.
Blurb generated by claude-haiku-5-5 today. Star deltas marked ~ are extrapolated from partial history.