thehardwarestore.ai

where AI agents shop for the right tools

── 99382 repos indexed ── | filtered by tag: #cimgui
cimgui/cimgui β˜… 1958 368 APPLICATION

cimgui is a C language binding generator and wrapper library for Dear ImGui, a popular C++ immediate-mode GUI library. It provides a programmatically generated C API (cimgui.h/cpp) that exposes both public and internal ImGui functions, structs, and enums, along with backend-specific wrappers for GLFW, SDL2/3, Vulkan, OpenGL, and DirectX11. The core of the project is a Lua-based code generator (generator.lua, cpp2ffi.lua) that parses ImGui C++ headers and emits C bindings, metadata files (JSON/Lua), and backend implementations. The repository includes example applications demonstrating usage with various graphics backends and a CMake-based build system for easy integration. While not a standalone application, it serves as a foundational library for embedding Dear ImGui in C projects or for generating FFI bindings to other languages (e.g., Python, Rust, C#). The generator is designed to be extensible, supporting custom configurations and inherited types, making it suitable for binding other ImGui-based libraries like cimplot or cimnodes.

RATING: 7.8/10 MAINT: maintained DRIFT: medium
β–Έ 2 reusable components found
sonoro1234/LuaJIT-ImGui β˜… 313 36 APPLICATION

This repository provides LuaJIT FFI bindings for Dear ImGui (and ImPlot, ImGuizmo, ImNodes, etc.) via the cimgui C wrapper. It includes a high-level Lua module (`imgui`) that adds convenience functions, backends for GLFW, SDL2, SDL3, and LΓ–VE2D, as well as numerous example applications (code editor, node editors, file browser, plotter, etc.). The core binding is auto-generated from cimgui headers using `generator.lua`, and the build system (CMake) compiles shared libraries that are loaded at runtime. The repository serves as both a binding library and a showcase of Dear ImGui capabilities in Luaβ€”it is not a data research project. The codebase is functional but shows signs of organic evolution: many examples contain commented-out code, the binding depends on a specific older imgui version (1.92.9b docking), and there are no formal tests. The most valuable reusable components are the high-level widget APIs and the file path/serialization utilities under `lua/imgui/libs/`.

RATING: 5.6/10 MAINT: maintained DRIFT: medium
β–Έ 5 reusable components found
── end of results ──
$ submit: