Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. LÖVE
  3. Love Imgui

Love Imgui

MITC++0.9

A Lua binding of Dear ImGui for the LÖVE game engine, enabling immediate-mode GUI development.

GitHubGitHub
351 stars65 forks0 contributors

What is Love Imgui?

LOVE-IMGUI is a Lua binding of the Dear ImGui library for the LÖVE game engine. It enables developers to embed immediate-mode graphical user interfaces directly into their LÖVE games or tools, facilitating the creation of debug panels, editors, and in-game overlays without external dependencies.

Target Audience

LÖVE game developers and tool creators who need efficient, real-time GUI components for debugging, prototyping, or building editor interfaces within their 2D games.

Value Proposition

It provides a performant, well-integrated ImGui experience tailored for LÖVE's Lua environment, with Lua-friendly API design choices like string-based enums and configurable return value ordering.

Overview

imgui module for the LÖVE game engine

Use Cases

Best For

  • Adding real-time debug overlays to LÖVE games
  • Building in-game level editors or tooling
  • Creating prototype UI for game mechanics
  • Developing custom development tools within LÖVE
  • Integrating ImGui's widget system into 2D games
  • Making interactive config menus or settings panels

Not Ideal For

  • Projects requiring polished, production-ready user interfaces for players, as ImGui is optimized for debugging and tools, not final game UI.
  • Teams needing stable, advanced docking systems, since the included docks extension is deprecated and pending replacement.
  • Developers using LÖVE versions beyond 11.1, due to potential compatibility issues with the module's specific binding.
  • Applications demanding extensive custom theming or animations, as ImGui's minimal styling requires additional effort for visual customization.

Pros & Cons

Pros

Lua-Friendly API

Uses string-based enums (e.g., 'ImGuiWindowFlags_AlwaysAutoResize') and configurable return value ordering, making the code more readable and intuitive for Lua developers.

Seamless Input Integration

Automatically handles LÖVE input callbacks (keyboard, mouse, text) with capture control via functions like GetWantCaptureKeyboard(), simplifying event management.

Immediate-Mode Efficiency

Bridges ImGui's performant C++ backend with LÖVE's Lua environment, enabling real-time GUI updates for debug tools and editors with minimal overhead.

Comprehensive Binding

Provides access to 275 ImGui functions, covering most needs for in-game interfaces, as noted in the README, despite some unsupported features.

Cons

Deprecated Docking

The docks extension is marked as deprecated and will be replaced, leading to instability and future breaking changes for advanced layout management.

Incomplete Function Coverage

With 43 unsupported functions out of ImGui's API, some features may be missing, limiting functionality for complex GUI requirements.

Setup and Build Hurdles

Requires building the module or managing pre-built binaries, which adds complexity compared to pure Lua libraries and may deter quick prototyping.

Frequently Asked Questions

Quick Stats

Stars351
Forks65
Contributors0
Open Issues25
Last commit2 years ago
CreatedSince 2016

Tags

#imgui#bindings#debug-tools#game-development#immediate-mode-gui#lua#gui-library#game-engine#love2d

Built With

L
LÖVE
D
Dear ImGui
L
Lua
C
C++

Included in

LÖVE4.3k
Auto-fetched 1 day ago

Related Projects

SUITSUIT

Immediate Mode GUI library for LÖVE

Stars541
Forks73
Last commit3 years ago
SlabSlab

An immediate mode GUI for the Love2D framework.

Stars398
Forks32
Last commit3 months ago
Löve-NuklearLöve-Nuklear

Lightweight immediate mode GUI for LÖVE games

Stars392
Forks33
Last commit1 year ago
GOOiGOOi

LÖVE GUI Library

Stars239
Forks26
Last commit3 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub