I’ve released a widget library for the visual prog...
# share-your-work
r
I’ve released a widget library for the visual programming editor of Desk. It's also generic and extensible widget for any purpose. You can create node-based or analog synthesizer-like UI with simple API. https://github.com/ryo33/egui_cable
❤️ 4
i
Nice! This is my first contact with the term "egui" — what does it mean?
r
egui is an amazing library for backend-agnostic widget rendering written in Rust.
egui is amazing for easy to use, customizable, and nice performance.
c
Wow, that's an impressive looking library.
r
Yes, I believe this has a potential to be used everywhere in the near future.
j
That is very cool @Ryo Hirayama. Can you annotate the wires?
r
Yes! The next TODO is a custom look of ports, plugs, and cables, and it can be done soon.
j
Nice. I think there's probably a sort of nested box, node and wire approach that could be used for expressing declarative rules, which would interesting to prototype as an alternative to the method we are using now.
r
I don't get your point. Do you have any example of "a sort of nested box, node and wire approach" and "declarative rules"?
j
I will attempt to draw a picture when I get a chance.
r
Thanks
s
@Ryo Hirayama Hi, do you know any javascript equivalent of this tool? I tried googling wire connection ui but didn't find something related.
r
@Souler T egui_cable is not JavaScript, but actually, it runs in a browser (on a canvas)! It’s really easy to create a web app with egui.
s
wow didn't know that. Is it still needed to learn rust to use this tool? Any plan for api support to call in other languages?
i just checked the egui github repo. looks really smooth and nice!
r
I don't plan API support for other language. Writing GUI app with egui only requires really simple and easy Rust codes, and rust-analyzer, a Rust language server for great IDE experience is really helpful. So IMO it’s easier than writing equivalent application in JavaScript with using React or something.
s
Gotcha. thanks for your reply!
r
Glad I could help!