• Stars
    star
    285
  • Rank 145,115 (Top 3 %)
  • Language
    Python
  • License
    MIT License
  • Created over 4 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

https://pthom.github.io/imgui_manual_online - an interactive manual for ImGui

Dear ImGui: an interactive manual

Source for an online interactive manual for Dear ImGui.

Click on the image below to open it:

ImGui Manual

See some demo videos with more explanations at https://pthom.github.io/imgui_manual_online.


This interactive manual was developed using Hello ImGui, which provided the emscripten port, as well as the assets embedding and image loading. ImGuiManual.cpp gives a good overview of Hello Imgui API.

See also a related demo for Implot, which also provides code navigation.

I'd love to read your feedback!.

Test ImGui from your browser: no installation required!

This repository also enables you to get a feel of how easy it is to write ImGui applications by allowing you to write and run your own code in 3 minutes, without even downloading or installing anything : it runs on a dedicated cloud server on gitpod.io (which is free to use), so that you do not even need a compiler.

For example, you could write and run this code online:

#include "playground.h"
void Playground() {
    static int counter = 0;
    if (ImGui::Button("Click me"))
        ++counter;
    ImGui::Text("counter=%i", counter);
}

Just click on the link below:

Open this repo in gitpod.io

More info: demo on youtube

Build instructions

First, init the submodules:

git submodule update --init --recursive

Build instructions for emscripten

Install emscripten if not present

./external/hello_imgui/tools/emscripten/install_emscripten.sh

Build for emscripten using tools/emscripten_build.sh

./tools/emscripten_build.sh

Launch a web server

python3 -m http.server

Then, browse to http://localhost:8000/src/imgui_manual.html

Build instructions on desktop (linux, MacOS, Windows)

Init the submodules:

git submodule update --init --recursive

Install third parties via vcpkg (SDL)

python  external/hello_imgui/tools/vcpkg_install_third_parties.py

Run cmake, using vcpkg toolchain

mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../external/hello_imgui/vcpkg/scripts/buildsystems/vcpkg.cmake

Build and run

make -j 4
./src/imgui_manual

ETFM! (Enjoy The Fine Manual!)

More Repositories

1

northwind_psql

Northwind sample database for postgres
647
star
2

hello_imgui

Hello, Dear ImGui: unleash your creativity in app development and prototyping
C++
536
star
3

imgui_bundle

Dear ImGui Bundle: easily create ImGui applications in Python and C++. Batteries included!
Python
470
star
4

cleantype

Readable and consistent C++ type introspection - Compiler Decipherer
C++
86
star
5

imgui_datascience

(py)imgui for data and computer vision scientists
Python
85
star
6

cvnp

cvnp: pybind11 casts between numpy and OpenCV, with shared memory
C++
46
star
7

immvision

ImmVision, aka Immediate Vision: immediate image debugger and insights
C++
36
star
8

implot_demo

Online demo for [implot](https://github.com/epezent/implot)
C++
23
star
9

litgen

litgen: a pybind11 automatic generator for humans who like nice code and API documentation. Also a C++ transformer tool
Jupyter Notebook
20
star
10

hello_imgui_my_app

Sample app using hello_imgui
C++
19
star
11

TestSolvePnp

sandbox for testing various pnp strategies with opencv
C++
12
star
12

rpn_calculator

A sample RPN calculator build with ImGui Bundle and HelloImGui
C++
8
star
13

cmake_registertest

cmake scripts for googletest / catch / doctest. Automatic tests registration, even inside library code.
CMake
6
star
14

hello_imgui_template

A quick start template to work with Hello ImGui
HTML
6
star
15

clion-ninja

Python
4
star
16

multiplicative-persistence

Sandbox around multiplicative persistence
C++
3
star
17

Cling_Repl_Demo

Some demos and docs around cling and xeus-cling
Jupyter Notebook
3
star
18

imgui_bundle_template

A quick start template to work with Dear ImGui Bundle
HTML
3
star
19

imgui_manual_online

ImGui Manual - Online
HTML
2
star
20

srcml_caller

srcml_caller, simple python bindings for srcML
C++
2
star
21

catch_registerstaticlibrary

Static library testing made easy with catch and cmake
Python
1
star
22

function_list_vs_abtsract_interface

explores a possible alternative to pure abstract interfaces in C++, under the form of a list of std::function
C++
1
star
23

clcache-msbuild-install

Easily integrate clcache with Visual Studio and msbuild
Python
1
star
24

node_window_clipping_issue

Example code for reproducing https://github.com/thedmd/imgui-node-editor/issues/205
C++
1
star
25

cpp_skeleton

multiplatform c++ project skeleton (using fplus, doctest, conan, travis & appveyor)
CMake
1
star
26

test_conan_opencv_codecs

Python
1
star
27

doctest_registerlibrary

Static library "doctesting" made easy with cmake
Python
1
star
28

env_utils

Shell
1
star
29

pybind_numpy_error

Shortest reproduction of a bug between numpy and pybind11
C++
1
star
30

pylance_test

Dummy repo to test issues with pylance
Python
1
star
31

sandbox-master_repo

1
star
32

pretty_function_sandbox

This repo demonstrates how `__PRETTY_FUNCTION__` can be used in order to get compile time type information.
C++
1
star
33

lg_skbuild_template

An adpatation of scikit_build_example for litgen
Python
1
star
34

tmp_implot_dyn

Sample demo of implot using dynamic link / using long and long double
C++
1
star
35

pthom

1
star
36

FitSpline

Exercice around spline fitting
Jupyter Notebook
1
star
37

fiatlux

Python
1
star
38

sdl_glfw_cmake_issue

Repro of a cmake issue when combining glfw and SDL on MacOS
Shell
1
star
39

lunasvg_perf_issue

Repro for a performance issue with lunasvg and imgui
C++
1
star