{"id":23917924,"url":"https://github.com/dinau/imguin_examples","last_synced_at":"2025-07-22T11:38:21.676Z","repository":{"id":270485011,"uuid":"910056204","full_name":"dinau/imguin_examples","owner":"dinau","description":"The examples for ImGuin that ImGui wrapper for Nim language.","archived":false,"fork":false,"pushed_at":"2025-03-14T14:50:05.000Z","size":18349,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T05:24:02.149Z","etag":null,"topics":["cimgui","example","futhark","glfw","imgui","imguifiledialog","imguizmo","imnodes","implot","nim","opengl","sdl2","sdl3"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dinau.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-30T11:39:06.000Z","updated_at":"2025-03-14T14:50:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"66f31b4d-2d98-4637-a20d-88eed3f3a324","html_url":"https://github.com/dinau/imguin_examples","commit_stats":null,"previous_names":["dinau/imguin_examples"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fimguin_examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fimguin_examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fimguin_examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fimguin_examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dinau","download_url":"https://codeload.github.com/dinau/imguin_examples/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249252442,"owners_count":21238186,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cimgui","example","futhark","glfw","imgui","imguifiledialog","imguizmo","imnodes","implot","nim","opengl","sdl2","sdl3"],"created_at":"2025-01-05T13:11:21.775Z","updated_at":"2025-07-22T11:38:21.659Z","avatar_url":"https://github.com/dinau.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\n- [ImGuin examples project](#imguin-examples-project)\n  - [Usage: Sample program and run](#usage-sample-program-and-run)\n    - [Prerequisites](#prerequisites)\n    - [Build examples](#build-examples)\n    - [Available libraries](#available-libraries)\n    - [Screen shot (examples)](#screen-shot-examples)\n        - [glfw_opengl3](#glfw_opengl3)\n        - [glfw_opengl3_imknobs](#glfw_opengl3_imknobs)\n        - [glfw_opengl3_filedialog](#glfw_opengl3_filedialog)\n        - [glfw_opengl3_imgui_toggle](#glfw_opengl3_imgui_toggle)\n        - [glfw_opengl3_imspinner](#glfw_opengl3_imspinner)\n        - [glfw_opengl3_iconfont_viewer](#glfw_opengl3_iconfont_viewer)\n        - [glfw_opengl3_image_load / sdl2_opengl3](#glfw_opengl3_image_load--sdl2_opengl3)\n        - [sdl2_renderer  / sdl3_renderer  / sdl3_opengl3 / sdl3_sdlgpu3](#sdl2_renderer---sdl3_renderer---sdl3_opengl3--sdl3_sdlgpu3)\n        - [glfw_opengl3_image_save](#glfw_opengl3_image_save)\n        - [glfw_opengl3_jp](#glfw_opengl3_jp)\n        - [glfw_opengl3_implot](#glfw_opengl3_implot)\n        - [glfw_opengl3_implot3d](#glfw_opengl3_implot3d)\n        - [glfw_opengl3_imnodes](#glfw_opengl3_imnodes)\n        - [glfw_opengl3_imguizmo](#glfw_opengl3_imguizmo)\n        - [glfw_opengl3_imColorTextEdit](#glfw_opengl3_imcolortextedit)\n        - [glfw_opengl3_imgui_markdown](#glfw_opengl3_imgui_markdown)\n        - [My test app movie using imguin](#my-test-app-movie-using-imguin)\n  - [Cross compilation: Generating Windows application binary(\\*.exe) on Linux OS](#cross-compilation-generating-windows-application-binary%5Cexe-on-linux-os)\n  - [Selection backend compiler](#selection-backend-compiler)\n  - [TODO](#todo)\n  - [Compressing binary file](#compressing-binary-file)\n  - [My tools version](#my-tools-version)\n  - [Other link](#other-link)\n        - [Similar project ImGui / CImGui](#similar-project-imgui--cimgui)\n        - [SDL Game tutorial Platfromer](#sdl-game-tutorial-platfromer)\n        - [Other link2](#other-link2)\n        - [Memo](#memo)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n\n## ImGuin examples project\n\n![alt](https://github.com/dinau/imguin_examples/actions/workflows/windows.yml/badge.svg)  ![alt](https://github.com/dinau/imguin_examples/actions/workflows/linux.yml/badge.svg)\n\nConfirmed **ImGuin** verion: **v1.92.0.1** ([Dear ImGui](https://github.com/ocornut/imgui)/[CImGui](https://github.com/cimgui/cimgui) version: 1.92.0) (2025/07)\n\nThis project is example project to use Dear ImGui, ImPlot and so on in Nim language.  \nWrapper libraies used are here [ImGuin](https://github.com/dinau/imguin) [^notice]\n\n[^notice]: It may be better to use the **mainstream** project [nimgl/imgui](https://github.com/nimgl/imgui) (ImGui v1.85)  \n,updated project [nimgl-imgui](https://github.com/dinau/nimgl-imgui) (ImGui v1.89.9) ,sub project [nim_implot](https://github.com/dinau/nim_implot) and test project [nimgl_test](https://github.com/dinau/nimgl_test),  \nor [https://github.com/daniel-j/nimgl-imgui](https://github.com/daniel-j/nimgl-imgui)(ImGui v1.91.1)\n\n### Usage: Sample program and run\n\n---\n\n#### Prerequisites\n\n---\n\n- [Nim-2.0.16](https://nim-lang.org) or later\n- Windows10 or later  \n[MSys2/MinGW installed](https://www.msys2.org/): Command line tools: make, cp, rm, git, ...etc\n\n   ```sh\n   pacman -S mingw-w64-x86_64-{gcc,glfw} make\n   ```\n\n- Linux: Debian / Ubuntu families \n\n   ```sh\n   $ sudo apt install gcc g++ make git \n   $ sudo apt install lib{opengl-dev,gl1-mesa-dev,glfw3,glfw3-dev,libsdl2-dev}\n   ```\n\n#### Build examples\n\n---\n\n1. First clone this project,\n\n   ```sh\n   git clone https://github.com/dinau/imguin_examples\n   ```\n\n1. Install dependencies libraries,\n\n   ```sh\n   cd imguin_examples\n   nimble refresh\n   nimble dep\n   ```\n\n1. For instance [glfw_opengl3_base.nim](glfw_opengl3_base/glfw_opengl3_base.nim),\n\n   ```sh\n   pwd\n   imguin_examples/glfw_opengl3_base\n   make  # or make run\n   ```\n\n   After build, run `./glfw_opengl3_base(.exe)`  \n   Compilation options depend on `./config.nims` and `./Makefile`.\n\n\n1. Selecting static link or dynamic link.  \nIf you'd like to build executables with static link (not using `*.dll`),  \nedit `./linkControl.nim` in respective example folder.  \n   To not depend on any other `*.dll` files,  \n   change to [^glfwStatic]\n      ```nim\n      const STATIC_LINK_GLFW = true   # if true, it doesn't need glfw3.dll\n      const STATIC_LINK_CC   = true   # if true, it doesn't need libstd++-6.dll\n      ```\n\n[^glfwStatic]: `STATIC_LINK_GLFW = false` can only be set at Dear ImGui 1.92.0 or later\n\n#### Available libraries \n\n---\n\nLibrary name / C lang wrapper\n- [x] [ImGui](https://github.com/ocornut/imgui) / [CImGui](https://github.com/cimgui/cimgui)\n- [x] [ImPlot](https://github.com/epezent/implot) / [CImPlot](https://github.com/cimgui/cimplot)\n- [x] [ImNodes](https://github.com/Nelarius/imnodes) / [CImNodes](https://github.com/cimgui/cimnodes)\n- [x] [ImGuizmo](https://github.com/CedricGuillemet/ImGuizmo) / [CImGuizmo](https://github.com/cimgui/cimguizmo)\n- [x] [ImGui-Knobs](https://github.com/altschuler/imgui-knobs) / [CImGui-Knobs](https://github.com/dinau/imguin/tree/main/src/imguin/private/cimgui-knobs)\n- [x] [ImGuiFileDialog](https://github.com/aiekick/ImGuiFileDialog) / [CImGuiFileDialog](https://github.com/dinau/CImGuiFileDialog)\n- [x] [ImGui_Toggle](https://github.com/cmdwtf/imgui_toggle) / [CimGui_Toggle](https://github.com/dinau/cimgui_toggle)\n- [x] [ImPlot3d](https://github.com/brenocq/implot3d) / [CImPlot3d](https://github.com/cimgui/cimplot3d) \n- [x] [ImSpinner](https://github.com/dalerank/imspinner) / [CImSpinner](https://github.com/dinau/cimspinner) \n- [x] [ImGuiColorTextEdit](https://github.com/santaclose/ImGuiColorTextEdit) / [cimCTE](https://github.com/cimgui/cimCTE) (2025/03)\n- [ ] [ImGui_Markdown](https://github.com/enkisoftware/imgui_markdown) WIP\n\n#### Screen shot (examples)\n\n---\n\nThese screen shots are on Windows10.\n\n###### [glfw_opengl3](glfw_opengl3)  \n\n---\n\nBasic example with icon fonts\n\n![alt](https://github.com/dinau/imguin/raw/main/src/img/screenshot1.png)\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3\n   make        # or make run\n   ```\n\n   or \n\n   ```sh\n   nim c glfw_opengl3.nim    # or  nim c -r glfw_opengl3.nim   or   nim r glfw_opengl3.nim \n   ```\n\n\n\n###### [glfw_opengl3_imknobs](glfw_opengl3_imknobs)\n\n---\n\n[https://github.com/altschuler/imgui-knobs](https://github.com/altschuler/imgui-knobs)  \n\n\n[cimgui-knobs](src/imguin/private/cimgui-knobs) sources have been contributed from [system64MC](https://github.com/system64MC) / [PR](https://github.com/dinau/imguin/commits?author=system64MC) (2024/12).  Thank you.\n\n\n![alt](https://github.com/dinau/imguin/raw/main/src/img/imgui_knobs.png)\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_imknobs\n   make \n   ```\n   or \n\n   ```sh\n   nim c -d:ImKnobsEnable --warning:HoleEnumConv:off glfw_opengl3_imknobs.nim  \n   ```\n\n###### [glfw_opengl3_filedialog](glfw_opengl3_filedialog)\n\n---\n\n[ImGuiFileDialog](https://github.com/aiekick/ImGuiFileDialog) / [CImGuiFileDialog](https://github.com/dinau/CImGuiFileDialog)   \n\n![alt](https://github.com/dinau/imguin/raw/main/src/img/filedialog.png)\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_filedialog\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c -d:ImGuiFileDialogEnable  glfw_opengl3_filedialog.nim  \n   ```\n\n###### [glfw_opengl3_imgui_toggle](glfw_opengl3_imgui_toggle)  \n\n---\n\n![alt](https://github.com/dinau/imguin_examples/raw/main/img/imgui_toggle_simple.png)  \n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_imgui_toggle\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c -d:ImGuiToggle  glfw_opengl3_imgui_toggle.nim  \n   ```\n\n###### [glfw_opengl3_imspinner](glfw_opengl3_imspinner)  \n\n---\n\n![alt](https://github.com/dinau/cimspinner/raw/main/img/cimspinner.gif)  \n![alt](https://github.com/dinau/imguin_examples/raw/main/img/imspinner.png)  \n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_imspinner\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c -d:ImSpinner glfw_opengl3_imspinner.nim  \n   ```\n\n###### [glfw_opengl3_iconfont_viewer](glfw_opengl3_iconfont_viewer)  \n\n---\n\nIcon font viewer and magnifying glass\n\n![alt](https://github.com/dinau/imguin_examples/raw/main/img/iconfont_viewer.png)\n\n- Build\n\n   ```sh\n   pwd\n   iconFontViewer\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c iconFontViewer.nim  \n   ```\n\n\n###### [glfw_opengl3_image_load](glfw_opengl3_image_load) / [sdl2_opengl3](sdl2_opengl3) \n\n---\n\nImage load and magnifying glass\n\n![alt](https://github.com/dinau/imguin/raw/main/src/img/image_load.png)\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_image_load\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c glfw_opengl3_image_load.nim  \n   ```\n\n- Build sdl2 version\n\n   ```sh\n   pwd\n   sdl2_opengl3\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c -d:SDL sdl2_opengl3.nim  \n   ```\n\n###### [sdl2_renderer](sdl2_renderer)  / [sdl3_renderer](sdl3_renderer)  / [sdl3_opengl3](sdl3_opengl3) / [sdl3_sdlgpu3](sdl3_sdlgpu3)\n\n---\n\nSDL renderer backend.\n\n- Build sdl2 version\n\n   ```sh\n   pwd\n   sdl2_renderer\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c -d:SDL sdl2_renderer.nim  \n   ```\n\n- Build sdl3 version  \n  See [SDL3 installation on Linux OS](https://github.com/dinau/sdl3_nim?tab=readme-ov-file#for-linux-os)\n\n   ```sh\n   pwd\n   sdl3_opengl3\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c -d:SDL sdl3_opengl3.nim  \n   ```\n\n- Build sdl3 version  \n\n   ```sh\n   pwd\n   sdl3_renderer\n   make \n   ```\n\n   or \n\n   ```sh\n   nim c -d:SDL sdl3_renderer.nim  \n   ```\n\n\n###### [glfw_opengl3_image_save](glfw_opengl3_image_save)  \n\n---\n\nImage load / save  and magnifying glass  \nIt can save a screen shot as [ jpg, bmp, png or tga ] file.\n\n![alt](https://github.com/dinau/imguin/raw/main/src/img/image_save.png)\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_image_save\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c glfw_opengl3_image_save.nim\n   ```\n\n###### [glfw_opengl3_jp](glfw_opengl3_jp)\n\n---\n\nShowing UTF-8 text and input text with a local country language.  \n![alt](https://github.com/dinau/imguin/raw/main/src/img/screenshot2.png)\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_jp\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c glfw_opengl3_jp.nim\n   ```\n\n###### [glfw_opengl3_implot](glfw_opengl3_implot)\n\n---\n\nShowing ImGui demo with ImPlot demo.  \n![alt](https://github.com/dinau/imguin/raw/main/src/img/implot1.png)  \n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_implot\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c -d:ImPlotEnable glfw_opengl3_implot.nim\n   ```\n\n###### [glfw_opengl3_implot3d](glfw_opengl3_implot3d)\n\n---\n\nShowing ImPlot3D demo. WIP \n\n![alt](img/implot3d1.png)\n![alt](img/implot3d2.png)\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_implot3d\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c -d:ImPlotEnable -d:ImPlot3DEnable glfw_opengl3_implot3d.nim\n   ```\n\n###### [glfw_opengl3_imnodes](glfw_opengl3_imnodes)\n\n---\n\n![alt](https://github.com/dinau/imguin/raw/main/src/img/imnodes-demo.png)  \n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_imnodes\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c -d:ImNodesEnable glfw_opengl3_imnodes.nim\n   ```\n\n###### [glfw_opengl3_imguizmo](glfw_opengl3_imguizmo)\n\n---\n\n![alt](https://github.com/dinau/imguin/raw/main/src/img/imguizmo.png)  \n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_imguizmo\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c -d:ImGuizmoEnable glfw_opengl3_imguizmo.nim\n   ```\n\n###### [glfw_opengl3_imColorTextEdit](glfw_opengl3_imColorTextEdit)\n\n---\n\n![alt](https://github.com/dinau/imguin_examples/raw/main/img/imColorTextEdit.png)  \n\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_imColorTextEdit\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c -d:ImColorTextEdit glfw_opengl3_imColorTextEdit.nim\n\n###### [glfw_opengl3_imgui_markdown](glfw_opengl3_imgui_markdown)\n\n---\n\nWIP at this moment.\n\n![alt](https://github.com/dinau/imguin_examples/raw/main/img/imgui_markdown.png)  \n\n\n- Build\n\n   ```sh\n   pwd\n   glfw_opengl3_imgui_markdown\n   make        # or make run\n   ```\n   \n   or \n\n   ```sh\n   nim c -d:ImGuiMarkdownEnable glfw_opengl3_imgui_markdown.nim\n   ```\n\n######  My test app movie using imguin\n\n---\n\n[![Sample movie,Youtube](https://github.com/dinau/imguin/raw/main/src/img/fontx2v_demo.png)](https://youtu.be/Ea0t7b9Kmq4)\n\n### Cross compilation: Generating Windows application binary(\\*.exe) on Linux OS\n\n---\n\nSee:  \n[Cross compilation to Windows, linker error (unrecognized option '-z'](https://forum.nim-lang.org/t/11302#73838)  \nhttps://nim-lang.org/docs/nimc.html#crossminuscompilation-for-windows\n\nFor example on Linux Mint 22 and so on,\n\n```sh\npwd\nexamples\ncd glfw_opengl3\n```\n\n```sh\nmake win  \n```\n\nor\n\n```sh\nnim c -d:mingw glfw_opengl3\n```\nor \n\n```sh\nnim c --os:windows glfw_opengl3\n```\n\n\n`glfw_opengl3.exe` will be generated in the current folder.\n\n\n### Selection backend compiler\n\n---\n\nYou might be able to use another C/C++ compiler,  \n`Clang, vcc(Visual Studio C/C++) , zig cc`  \nby changing variable `TC` in [config.nims.common](config.nims.common).\n\n### TODO\n\n---\n\n- [x] Can it compile with `zig cc` ? Done. But Zig lang. is very unstable at this time. \n- [x] Whether can it use `cimgui.dll` ? (Now it can only be static link) Closed. Only be static link.\n- [x] Easier compilation for SDL2 app. (2024/09) Done.\n- [x] Added: ImNodes/CImNodes (2023/10) Done\n- [x] Unfortunately Dear ImGui - 1.89.7 dosn't work well at this moment.(2023/07) Done. (2023/08)\n- [x] Whether can it do `nimble install imguin` ? [Done (2023/09) (#Issue 13)](https://github.com/dinau/imguin/issues/13)\n- [x] Add Font Awesome (Icon Font) demo.  Done (2023/04).\n- [x] Can it compile with MSVC (--cc:vcc) ? Done. Except SDL2 demo. (2023/03), TODO (2024/09)\n- [x] Can it compile with Clang (--cc:clang) ? Done. (2023/03)\n- [x] Add SDL2 example. Done. [sdl2_opengl3](sdl2_opengl3) (2023/03)\n- [x] First step has been done. (2023/03)\n\n### Compressing binary file\n\n---\n\nInstall `UPX` with MSys console on WindowsOS,\n\n\n```sh\npacman -S mingw-w64-x86_64-upx\n```\n\nFor compression exe file,\n\n```sh\npwd\nexamples\ncd glfw_opengl3_implot\nmake upx\n```\n\n```sh\n                       Ultimate Packer for eXecutables\n                          Copyright (C) 1996 - 2024\nUPX 4.2.4       Markus Oberhumer, Laszlo Molnar \u0026 John Reiser    May 9th 2024\n\n        File size         Ratio      Format      Name\n   --------------------   ------   -----------   -----------\n   7117824 -\u003e   1217024   17.10%    win64/pe     glfw_opengl3_implot.exe      \n```\n\nDecompressing,\n\n```sh\nmake dupx\n```\n\nResult in,\n\n|                         |          GCC + UPX :  GCC |      Clang + UPX : Clang | MSVC(vcc) + UPX : MSVC    |\n|------------------------:|--------------------------:|-------------------------:|--------------------------:|\n|        glfw_opengl3.exe |          804 KB : 2360 KB |         720 KB : 2200 KB | 742 KB : 2070 KB          |\n| glfw_opengl3_implot.exe | **1220 KB** : **7120 KB** | **940KB**  : **4200 KB** | **945 KB**  : **3810 KB** |\n\nGCC: v14.2.0, Clang: v18.1.8, MSVC: 2022\n\n### My tools version\n\n---\n\nWindows11 (main)\n- **Nim Compiler Version 2.2.4**\n- **GCC (Rev1, Built by MSYS2 project) 15.1.0**\n\n   ```sh\n   pacman -S mingw-w64-ucrt-x86_64-gcc\n   ```\n\n- Clang version 20.1.7\n\n   ```sh\n   pacman -S mingw-w64-ucrt-x86_64-clang\n   ```\n- Visual Studio C++/C 2022\n- git version 2.46.0.windows.1\n- Make: GNU Make 4.4.1\n- MSys2/MinGW tools\n\nLinux OS: Debain \n- **Nim Compiler Version 2.2.4**\n- gcc 12.2.0\n- make: GNU Make 4.3\n- git version 2.39.5\n\n\n### Other link\n\n---\n\n- File Dialog\n   - [Cross Platform File Dialog for Dear-ImGui ](https://github.com/gallickgunner/ImGui-Addons)\n   - [ImGui File Dialogs - CLI and Client Library](https://github.com/time-killer-games/libfiledialogs)\n   - [A Dear ImGui based File Dialog without any extra dependencies](https://github.com/Julianiolo/ImGuiFD)\n- Other\n   - [Node Editor built using Dear ImGui](https://github.com/thedmd/imgui-node-editor)\n- GUI\n   - [nuklear-nim (Public archived)](https://github.com/zacharycarter/nuklear-nim)\n\n- Graphical\n  - [Immediate Mode Plotting](https://github.com/epezent/implot)\n     ![alt](https://raw.githubusercontent.com/wiki/epezent/implot/screenshots3/stem.gif)\n\n\n###### Similar project ImGui / CImGui\n\n---\n\n| Language [^order]    |          | Project                                                                                                                                         |\n| -------------------: | :---:    | :----------------------------------------------------------------:                                                                              |\n| **Lua**              | Script   | [LuaJITImGui](https://github.com/dinau/luajitImGui)                                                                                             |\n| **NeLua**            | Compiler | [NeLuaImGui](https://github.com/dinau/neluaImGui)                                                                                               |\n| **Nim**              | Compiler | [ImGuin](https://github.com/dinau/imguin), [Nimgl_test](https://github.com/dinau/nimgl_test), [Nim_implot](https://github.com/dinau/nim_implot) |\n| **Python**           | Script   | [DearPyGui for 32bit WindowsOS Binary](https://github.com/dinau/DearPyGui32/tree/win32)                                                         |\n| **Ruby**             | Script   | [igRuby_Examples](https://github.com/dinau/igruby_examples)                                                                                     |\n| **Zig**, C lang.     | Compiler | [Dear_Bindings_Build](https://github.com/dinau/dear_bindings_build)                                                                             |\n| **Zig**              | Compiler | [ImGuinZ](https://github.com/dinau/imguinz)                                                                                                     |\n\n###### SDL Game tutorial Platfromer\n\n---\n\n![ald](https://github.com/dinau/nelua-platformer/raw/main/img/platformer-nelua-sdl2.gif)\n\n| Language    [^order] |          | SDL         | Project                                                                                                                                               |\n| -------------------: | :---:    | :---:       | :----------------------------------------------------------------:                                                                                    |\n| **LuaJIT**           | Script   | SDL2        | [LuaJIT-Platformer](https://github.com/dinau/luajit-platformer)\n| **Nelua**            | Compiler | SDL2        | [NeLua-Platformer](https://github.com/dinau/nelua-platformer)\n| **Nim**              | Compiler | SDL3 / SDL2 | [Nim-Platformer-sdl2](https://github.com/def-/nim-platformer)/ [Nim-Platformer-sdl3](https://github.com/dinau/sdl3_nim/tree/main/examples/platformer) |\n| **Ruby**             | Script   | SDL3        | [Ruby-Platformer](https://github.com/dinau/ruby-platformer)                                                                                           |\n| **Zig**              | Compiler | SDL3 / SDL2 | [Zig-Platformer](https://github.com/dinau/zig-platformer)                                                                                             |\n\n[^order]: Alphabectial order\n\n###### Other link2\n\n---\n\n- https://github.com/SpartanJ/SOIL2  \nSOIL2 is a tiny C library used primarily for uploading textures into OpenGL. \n\n\n###### Memo\n\n---\n\n```sh\nerror: assignment to 'char **' from incompatible pointer type 'const char * const*' [-Wincompatible-pointer-types]\n```\n\n```nim\ntype ConstCstring {.importc: const char *.} = cstring\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdinau%2Fimguin_examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdinau%2Fimguin_examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdinau%2Fimguin_examples/lists"}