Just wondering how Iced's development is coming along

I asked this same question around a year ago. I first discovered iced a few years ago when my Rust skills were more basic (I’ve progressed a little since then, not a lot) and I needed a GUI to go with my primary Rust-based project. Iced didn’t seem ready to go then and it’s documentation was less than I needed. I settled on FLTK.rs for now. Anyway, I liked what I saw of Iced, so want to keep up with it. How close are you to a version 1.0 release?

TBA. Currently 0.14 is in the process of being released, the roadmap shows 0.15 and then an eventual 1.0 but none of that is certain. I (and a lot of other people) believe it’s usable today, but your experience may differ.

Here are my misgivings and thoughts:

  1. I am unfamiliar with Elm architecture. My attempt to use it when I first found Iced a couple of years ago resulted in confusion. I’ve progressed considerably in my Rust skills, but I’d wager a guess that you and the others who currently use Iced are far more advanced skillwise.

  2. I see where a little progress has been made on the Iced book, but I’m going to need a lot more input on the practical aspects of using Iced. On the positive side, I use an AI that is associated with my IDE (Jetbrains Rustrover) and that has made sussing out questions I have about Rust or Rust crates a lot easier when good documentation isn’t available.

  3. I really like that Iced is all-native Rust. However, while it has been a long haul learning how to use FLTK.rs, it is working for me. It seems kind of clunky, but I suspect that is more my skills (ore lack thereof) than a problem with the GUI. Still, if switching over to Iced isn’t too complicated, doing away with the Rust-wrapped C++ of FLTK might be a good thing to do.

Any words of wisdom to offer?

BTW, in case you’re interested, here’s a link to my main project on Github:

1 Like
  1. Elm architecture is simple and will come to you really fast and has nothing to do with Rust. Every example you will check will have Elm architecture inside as there is no other option to do it.
  2. Honestly Iced discord is a great way of getting help people there are very helpful and happy to answer questions, as of practical aspects just check examples/ in github there are tons
  3. Iced is great and once you spend a few days it comes naturally sooner or later you start creating custom widgets
1 Like

I was learning Rust for 2 years when I discovered iced, not really doing any projects before that. I wanted to dabble eith desktop GUIs and found other Rust GUI libraries to be either lacking, or to have a philosophy and design I just can’t agree with. What probably helped a lot is my general lack of experience with and non-existent attachment to other UI systems.

Iced makes heavy use of a lot of advanced Rust features, but you don’t need to know them all upfront to learn iced; you can learn along the way, it’s what I did.

1 Like

Ok, so I’m seriously considering moving over to Iced. I quizzed my AI about it, asking it to compare my current FLTK.rs with Iced and the link below has the result of that conversation. I suppose I need to play with the examples a little bit more and then maybe try to convert one of my little side projects into ELM with Iced. I’ll probably be back with more questions and should probably put them in a new thread. I’m sure I’ll need your help, so keep an eye out? Thanks.

I’ve appreciated you guys responding to my questions. Would it be too much to ask for you to go over to my Question Bank Creator project (linked above), look at the code, and give me your thoughts as to how difficult it will be to convert it over to Iced?

Warning: This conversation is a little long.

https://claude.ai/share/db2e07fd-cc86-4c9b-b53f-a5e5fd091343

If you like iced, libcosmic is based on it and adds many components and functionalities. I have actually wrote an app in Iced first and then re-worked the UI with libcosmic and while with iced I had to do a lots of things myself (like lots of sizing, positioning and layouting) in cosmic this is already part of the library. There is a community around libcosmic of course and lots of projects to be able to inspire yourself. And lastly, they have a stable release now.

Regarding the architecture, it was also new for me and I made a lot of wrong assumptions, but eventually you will learn by doing. here is a good article explaining it: Model-View-Update (MVU) – How Does It Work?