{"id":22980581,"url":"https://github.com/dinau/nim_implot","last_synced_at":"2025-08-13T17:33:28.937Z","repository":{"id":194819640,"uuid":"691125730","full_name":"dinau/nim_implot","owner":"dinau","description":"Nim binding for ImPlot / CImPlot with ImGui / CImGui","archived":false,"fork":false,"pushed_at":"2023-12-23T00:49:30.000Z","size":1044,"stargazers_count":17,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-01-25T22:58:56.668Z","etag":null,"topics":["cimgui","cimplot","debian","gcc","glfw","graph","gui","imgui","implot","linux","msvc","nim","nimgl","nimlang","opengl","plot","ui","windows"],"latest_commit_sha":null,"homepage":"","language":"Nim","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}},"created_at":"2023-09-13T14:49:34.000Z","updated_at":"2023-12-31T08:29:01.000Z","dependencies_parsed_at":"2024-01-03T08:42:25.807Z","dependency_job_id":"305f20c8-04f2-4cd4-8566-24af3c444526","html_url":"https://github.com/dinau/nim_implot","commit_stats":{"total_commits":31,"total_committers":1,"mean_commits":31.0,"dds":0.0,"last_synced_commit":"462e99b2818d434f915052b6f05cd0aaa1a4837e"},"previous_names":["dinau/nim_implot"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fnim_implot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fnim_implot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fnim_implot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dinau%2Fnim_implot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dinau","download_url":"https://codeload.github.com/dinau/nim_implot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229773548,"owners_count":18122031,"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","cimplot","debian","gcc","glfw","graph","gui","imgui","implot","linux","msvc","nim","nimgl","nimlang","opengl","plot","ui","windows"],"created_at":"2024-12-15T01:44:15.647Z","updated_at":"2024-12-15T01:44:16.426Z","avatar_url":"https://github.com/dinau.png","language":"Nim","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- [Nim ImPlot binding](#nim-implot-binding)\n- [Direct nimble install from Web](#direct-nimble-install-from-web)\n- [Runing all demo programs](#runing-all-demo-programs)\n- [Compiling application](#compiling-application)\n- [Notice: Compilation options](#notice-compilation-options)\n- [Generating ImPlot bindings for development](#generating-implot-bindings-for-development)\n- [Development](#development)\n- [Tools info](#tools-info)\n- [Example gallery written in Nim language](#example-gallery-written-in-nim-language)\n  - [Plots](#plots)\n    - [LinePlots.nim](#lineplotsnim)\n    - [FilledLinePlots.nim](#filledlineplotsnim)\n    - [ShadedPlots.nim](#shadedplotsnim)\n    - [ScatterPlots.nim](#scatterplotsnim)\n    - [RealTimePlots.nim](#realtimeplotsnim)\n    - [StairstepPlots.nim](#stairstepplotsnim)\n    - [BarGroups.nim](#bargroupsnim)\n    - [BarPlots.nim](#barplotsnim)\n    - [BarStacks.nim](#barstacksnim)\n    - [ErrorBars.nim](#errorbarsnim)\n    - [StemPlots.nim](#stemplotsnim)\n    - [InfiniteLines.nim](#infinitelinesnim)\n    - [PieCharts.nim](#piechartsnim)\n    - [HeatMaps.nim](#heatmapsnim)\n    - [Histogram.nim](#histogramnim)\n    - [DigitalPlots.nim](#digitalplotsnim)\n    - [Images.nim](#imagesnim)\n    - [MarkersAndText.nim](#markersandtextnim)\n    - [NaNValues.nim](#nanvaluesnim)\n  - [Subplots](#subplots)\n    - [Tables.nim](#tablesnim)\n    - [ItemSharing.nim](#itemsharingnim)\n  - [Axes](#axes)\n    - [LogScale.nim](#logscalenim)\n    - [MultipleAxes.nim](#multipleaxesnim)\n  - [Tools](#tools)\n    - [OffsetAndStride.nim](#offsetandstridenim)\n    - [DragRects.nim](#dragrectsnim)\n    - [DragAndDrop.nim](#draganddropnim)\n  - [Custom](#custom)\n    - [CustomDataAndGetters.nim](#customdataandgettersnim)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n\n### Nim ImPlot binding\n\n---\n\n[ImPlot ](https://github.com/epezent/implot) is an immediate mode, GPU accelerated plotting library for [Dear ImGui](https://github.com/ocornut/imgui).\n\n1. This project uses the modified generator that derived from the achievement of [Nimgl/imgui](https://github.com/nimgl/imgui) and [nimgl-imgui](https://github.com/daniel-j/nimgl-imgui)(forked).\n1. This project also uses ImGui library ([nim-imgui (ImGui v1.89.9 latest)](https://github.com/dinau/nimgl-imgui)) derived from [Nimgl/imgui](https://github.com/nimgl/imgui) and [nimgl-imgui](https://github.com/daniel-j/nimgl-imgui)(forked).\n1. Also have used [CImGui library](https://github.com/cimgui/cimgui)\n\n### Direct nimble install from Web\n\n---\n\n```sh\nnimble install https://github.com/dinau/nim_implot\n```\n\n### Runing all demo programs\n\n---\n\n```bash\ngit clone --recursive https://github.com/dinau/nim_implot\ncd nim_implot\nnimble test\n```\n\nTest source: [examples/demo](examples/demo)\n\n### Compiling application\n\n---\n\nIt has to be used **cpp** backend at compilation for example,\n\n```sh\npwd\nnim_implot\ncd examples/demo\nnim cpp -r ImPlotDemo.nim \n```\n\n**Note**: **C** backend is not supported.\n\n### Notice: Compilation options\n\n---\n\nIf demo programs crash, please try to specify compilation option  \n`--mm:refc` instead of `--mm:arc` or `--mm:orc`,  \nespecially if you use Nim-2.00, try to specify `--mm:refc`.  \nThese are TODO at this moment.\n\n### Generating ImPlot bindings for development\n\n---\n\n```bash\npwd\nnim_implot\nnimble gen\n```\n\nGenarated file: [src/implot.nim](src/implot.nim)\n\n\n### Development\n\n---\n\nIt is currently being developed and tested on\n\n* Windows 10\n* (Debian 12 Bookworm)  \n\n   ```sh\n   $ sudo apt install xorg-dev libopengl-dev libgl1-mesa-dev\n   ```\n\n### Tools info\n\n---\n \n- Windows10\n   - Nim Compiler Version 1.6.14 \n   - gcc.exe (Rev2, Built by MSYS2 project) 13.2.0\n- Debian 12 Bookworm \n   - Nim Compiler Version 1.6.14 \n   - gcc (Debian 12.2.0-14) 12.2.0\n\n### Example gallery written in Nim language\n\n---\n\n**Now all demo (over 50) programs have been implemented in Nim language** (2023/10),  \n(Orignal demo program is here [implot_demo.cpp](https://github.com/epezent/implot/blob/master/implot_demo.cpp), (C++))  \nbelow images are part of them.\n\n#### Plots\n\n---\n\n##### [LinePlots.nim](examples/demo/plots/LinePlots.nim)  \n\n![alt](img/LinePlots.png)  \n\n##### [FilledLinePlots.nim](examples/demo/plots/FilledLinePlots.nim)  \n\n![alt](img/FilledLinePlots.png)  \n\n##### [ShadedPlots.nim](examples/demo/plots/ShadedPlots.nim)  \n\n![alt](img/ShadedPlots.png)  \n\n##### [ScatterPlots.nim](examples/demo/plots/ScatterPlots.nim)  \n\n![alt](img/ScatterPlots.png)  \n\n##### [RealTimePlots.nim](examples/demo/plots/RealTimePlots.nim) \n\n![alt](img/RealTimePlots.png)  \n\n##### [StairstepPlots.nim](examples/demo/plots/StairstepPlots.nim)  \n\n![alt](img/StairstepPlots.png)  \n\n##### [BarGroups.nim](examples/demo/plots/BarGroups.nim)  \n\n![alt](img/BarGroups.png)  \n\n##### [BarPlots.nim](examples/demo/plots/BarPlots.nim)  \n\n![alt](img/BarPlots.png)  \n\n##### [BarStacks.nim](examples/demo/plots/BarStacks.nim)  \n\n![alt](img/BarStacks.png)  \n\n##### [ErrorBars.nim](examples/demo/plots/ErrorBars.nim)  \n\n![alt](img/ErrorBars.png)  \n\n##### [StemPlots.nim](examples/demo/plots/StemPlots.nim)  \n\n![alt](img/StemPlots.png)  \n\n##### [InfiniteLines.nim](examples/demo/plots/InfiniteLines.nim)  \n\n![alt](img/InfiniteLines.png)  \n\n##### [PieCharts.nim](examples/demo/plots/PieCharts.nim)  \n\n![alt](img/PieCharts.png)  \n\n##### [HeatMaps.nim](examples/demo/plots/HeatMaps.nim)  \n\n![alt](img/HeatMaps.png)  \n\n##### [Histogram.nim](examples/demo/plots/Histogram.nim)  \n\n![alt](img/Histogram.png)  \n\n##### [DigitalPlots.nim](examples/demo/plots/DigitalPlots.nim)  \n\n![alt](img/DigitalPlots.png)  \n\n##### [Images.nim](examples/demo/plots/Images.nim)  \n\n![alt](img/Images.png)  \n\n##### [MarkersAndText.nim](examples/demo/plots/MarkersAndText.nim)  \n\n![alt](img/MarkersAndText.png)  \n\n##### [NaNValues.nim](examples/demo/plots/NaNValues.nim)  \n\n![alt](img/NaNValues.png)  \n\n#### Subplots\n\n---\n\n##### [Tables.nim](examples/demo/subplots/Tables.nim)  \n\n![alt](img/Tables.png)  \n\n##### [ItemSharing.nim](examples/demo/subplots/ItemSharing.nim)  \n\n![alt](img/ItemSharing.png)  \n\n#### Axes\n\n---\n\n##### [LogScale.nim](examples/demo/axes/LogScale.nim)  \n\n![alt](img/LogScale.png)  \n\n##### [MultipleAxes.nim](examples/demo/axes/MultipleAxes.nim)  \n\n![alt](img/MultipleAxes.png)  \n\n#### Tools\n\n---\n\n##### [OffsetAndStride.nim](examples/demo/tools/OffsetAndStride.nim)  \n\n![alt](img/OffsetAndStride.png)  \n\n##### [DragRects.nim](examples/demo/tools/DragRects.nim)  \n\n![alt](img/DragRects.png)  \n\n##### [DragAndDrop.nim](examples/demo/tools/DragAndDrop.nim)  \n\n![alt](img/DragAndDrop.png)  \n\n#### Custom\n\n---\n\n##### [CustomDataAndGetters.nim](examples/demo/custom/CustomDataAndGetters.nim)  \n\n![alt](img/CustomDataAndGetters.png)  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdinau%2Fnim_implot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdinau%2Fnim_implot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdinau%2Fnim_implot/lists"}