Real-time GUI layout creator/editor for Dear ImGui

Overview

ImStudio

Build Status

Real-time GUI layout creator/editor for Dear ImGui

Screenshot with all windows

Making a simple layout

Inspired by Code-Building/ImGuiBuilder

Features

  • Drag edit
  • Property edit
  • Covers most of the commonly used default widgets (primitives, data inputs, and other miscellaneous)
  • Child windows
  • Real-time generation
  • Export to clipboard
  • Useful tools (Style & Color export, Demo Window, etc.)
  • Helpful resources (external)

Installation

Dependencies

  • GLFW
    Ubuntu Linux: sudo apt-get install libglfw3 libglfw3-dev
    Arch Linux: sudo pacman -S glfw
    MacOS: brew install glfw

Instructions

git clone https://github.com/Raais/ImStudio
cd ImStudio
make
./ImStudio

Ubuntu one-liner (not recommended)
#tested 20.04 | this is mainly for quickly testing on a VM
sudo apt-get -y update && sudo apt-get -y install build-essential git libglfw3 libglfw3-dev && git clone https://github.com/Raais/ImStudio && cd ImStudio && make -j2 && ./ImStudio

Credits

Thanks to Omar for Dear ImGui.
Thanks to Code-Building for the inspiration.

Issues
  • Makefile -> CMake + MSVC for Windows + Windows Workflow & Installer + macOS Workflow

    Makefile -> CMake + MSVC for Windows + Windows Workflow & Installer + macOS Workflow

    Thank you very much for the nice work. I think that developer community of Dear ImGUI will benefit a lot from this project.

    I made tiny modifications to the C++ part so that it can compile cleanly using MSVC 2019 and replaced the Makefile with CMake. Also added workflow/actions for Windows and macOS.

    You now need to install glfw only if the target platform is Linux. Windows & macOS will automatically download GLFW during the build process and build a static version that can then be linked against. This means that no brew is needed or macOS. It also means that native Windows runtime from VS2019 can be utilized and there's no need for mingw or msys runtimes. The app works pretty nicely on Windows. I haven't tried it yet on macOS, but the workflow builds with a few warnings.

    The Windows Workflow will now also create an MSI installer that users can install and use right away.

    Hope this helps. :)

    opened by yousseb 2
  • Generated Output: ImGui::End() needs to be outside of if block.

    Generated Output: ImGui::End() needs to be outside of if block.

    ImGui::End() should always be called, even if ImGui::Begin() returns false. Otherwise ImGui will assert on a begin/end stack mismatch.

    This might seem confusing initially, because ImGui widgets that have Begin/End calls should have their End calls inside the if block. However, that rule does not apply to ImGui windows.

    opened by sigmareaver 1
  • Fix some warning and add a Linux script to simplify the build

    Fix some warning and add a Linux script to simplify the build

    Hello,

    Thanks a lot for your nice tool, and sharing your code. I'll study your tool, and try to help if I can. Waiting, I found some little changes like fix some warnings. The change are under MIT license, i.e. for the script.

    Feel free to use it, or not, and to do whatever you want of this PR.

    opened by ebachard 1
  • Make -> CMake + Workflows for Windows & macOS

    Make -> CMake + Workflows for Windows & macOS

    Thank you very much for the nice work. I think that developer community of Dear ImGUI will benefit a lot from this project.

    I made tiny modifications to the C++ part so that it can compile cleanly using MSVC 2019 and replaced the Makefile with CMake. Also added workflow/actions for Windows and macOS.

    You now need to install glfw only if the target platform is Linux. Windows & macOS will automatically download GLFW during the build process and build a static version that can then be linked against. This means that no brew is needed or macOS. It also means that native Windows runtime from VS2019 can be utilized and there's no need for mingw or msys runtimes. The app works pretty nicely on Windows. I haven't tried it yet on macOS, but the workflow builds with a few warnings.

    Hope this helps. :)

    opened by yousseb 1
Releases(v1.2.4)
Owner
i like c++
null
Window and GUI system based on Dear ImGui from OCornut

ImWindow Window and GUI system based on ImGui from OCornut. Include docking/floating window, multi window and multi render support. Platform Actually

Thibault Hennequin 681 Jun 20, 2022
This is a thin c-api wrapper programmatically generated for the excellent C++ immediate mode gui Dear ImGui.

cimgui This is a thin c-api wrapper programmatically generated for the excellent C++ immediate mode gui Dear ImGui. All imgui.h functions are programm

Victor Bombi 22 Jul 5, 2021
imgui-filebrowser is a header-only file browser implementation for dear-imgui. C++ 17 is required.

imgui-filebrowser imgui-filebrowser is a header-only file browser implementation for dear-imgui. C++ 17 is required. Getting Started imfilebrowser.h s

Z Guan 369 Jun 19, 2022
This is a collection of widgets and utilities for the immediate mode GUI (imgui) that I am developing for the critic2 GUI

ImGui Goodies This is a collection of widgets and utilities for the immediate mode GUI (imgui) that I am developing for the critic2 GUI. Currently, th

null 95 Jun 22, 2022
Simple Notepad App. C++ with Qt Creator

Notepad How to run the app? To run this application: You have to have installed latest Visual C++ Redistributable for Visual Studio 2015, 2017 and 201

Yashmerino 3 Aug 5, 2021
Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

Dear ImGui (This library is available under a free and permissive license, but needs financial support to sustain its continued improvements. In addit

omar 39.3k Jun 24, 2022
Advanced 2D Plotting for Dear ImGui

ImPlot ImPlot is an immediate mode, GPU accelerated plotting library for Dear ImGui. It aims to provide a first-class API that ImGui fans will love. I

Evan Pezent 2.5k Jun 28, 2022
Dear ImGui prototyping wrapper.

LabImGui Prototyping framework LabImGui wraps up creating a window, GL bindings, and a full screen docking set up with ImGui so that all of the boiler

Nick Porcino 2 Dec 2, 2021
An integrated information center created with dear ImGui using modern C++ design / coding style.

ImGui info-center Introduction An integrated notification and information center created with dear ImGui. Interfaces and variables are designed under

Feej 5 Apr 22, 2022
This is a software renderer for Dear ImGui. I built it not out of a specific need, but because it was fun

Dear ImGui software renderer This is a software renderer for Dear ImGui. I built it not out of a specific need, but because it was fun. The goal was t

Emil Ernerfeldt 198 Jun 17, 2022
A permissively licensed markdown single-header library for Dear ImGui.

Support development of imgui_markdown through GitHub Sponsors or Patreon imgui_markdown Markdown For Dear ImGui A permissively licensed markdown singl

Juliette Foucaut 784 Jun 21, 2022
Nice things to use along dear imgui

Mini hexadecimal editor! Right-click for option menu. Features: Keyboard controls. Read-only mode. Optional Ascii display. Optional HexII display. Goto address. Highlight range/function. Read/Write handlers.

omar 617 Jun 24, 2022
Immediate mode 3D gizmo for scene editing and other controls based on Dear Imgui

ImGuizmo Latest stable tagged version is 1.83. Current master version is 1.84 WIP. What started with the gizmo is now a collection of dear imgui widge

Cedric Guillemet 2k Jun 27, 2022
Sample Unreal Engine 5.0.1 C++ Project That Incorporates Dear ImGui

UE5 With Dear ImGui A sample Unreal Engine 5.0.1 C++ project that incorporates the Dear ImGui graphical user interface library. YouTube Tutorial This

Kyle Geske 21 Jun 24, 2022
Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.

libui: a portable GUI library for C This README is being written. Status It has come to my attention that I have not been particularly clear about how

Pietro Gagliardi 10.3k Jun 19, 2022
Taitank is a cross platform lightweight flex layout engine implemented in C++.

Taitank is a cross platform lightweight flex layout engine implemented in C++.

Tencent 414 Jun 16, 2022
lite android layout for chromium

layout lite android layout for chromium include linear layout and relative layout If you are familiar with android, it is easy to get started However,

null 1 Oct 15, 2021
Yoga is a cross-platform layout engine which implements Flexbox

Yoga Building Yoga builds with buck. Make sure you install buck before contributing to Yoga. Yoga's main implementation is in C++, with bindings to su

Meta 15.3k Jun 26, 2022
A simple/fast stacking box layout library. It's useful for calculating layouts for things like 2D user interfaces.

A simple/fast stacking box layout library. It's useful for calculating layouts for things like 2D user interfaces. It compiles as C99 or C++. It's tested with gcc (mingw64), VS2015, and clang/LLVM. You only need one file to use it in your own project: layout.h.

Andrew Richards 670 Jun 27, 2022