Introducing Ymery - Declarative YAML-based UI for Dear ImGui #9135
zokrezyl
started this conversation in
New Users Build/Link/Run issues ONLY!
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I wanted to share a project we've been working on that builds on top of Dear ImGui (C++) and Imgui Bundle (python).
For the moment the C++ implementation lives in different repo https://github.com/zokrezyl/ymery-cpp while the python version (the initial prototype) under https://github.com/zokrezyl/ymery. Online demo of the python version at https://zokrezyl.github.io/ymery/demo/index.html.
The c++ version contains a powerful layout editor (everything still under work).
What is Imery?
Imery lets you build ImGui applications using declarative YAML files instead of writing code. It emerged from
our experience building an audio analysis tool where we kept rewriting similar UI patterns and realized we
needed a more declarative approach.
Simple example:
app:
window_title: "Hello Ymery"
widget: builtin.text
data: greeting
data:
greeting:
metadata:
label: "Welcome to Ymery!"
Run with: ymery --main app
Why we built it:
Separate UI structure from logic (MVC-like approach)
Enable rapid iteration without recompiling
Create a live data tree that UI components observe/manipulate
Make ImGui accessible to non-programmers through YAML
Current state:
Early alpha - experimental, expect breaking changes. We're actively seeking feedback and ideas from the
community.
Links:
GitHub: https://github.com/zokrezyl/ymery
PyPI: pip install ymery
We'd love to hear your thoughts, suggestions, or use cases where this might (or might not!) be useful. Thank you
to Pascal Thomet for Dear ImGui Bundle - it's been a joy to build on top of! Not to forget the authors of Dear ImGui (Omar (@ocornut).
Beta Was this translation helpful? Give feedback.
All reactions