Hacker News new | past | comments | ask | show | jobs | submit login

there's basically zero documentation for Iced as it stands. They even wrote that if you're not a great Rust dev, you're going to have a bad time and that all docs are basically "read the code" until their book is written. I'm glad System76 is able to build using Iced, but you need a great manual for a tool to be considered mature and useful.

IMO Slint is milestones ahead and better. They've even built out solid extensions for using their UI DSL, and they have pages and pages of docs. Of course everything has tradeoffs, and their licensing is funky to me.




The crate is 100% documented. what specific documentation do you think are lacking? Tutorials? That's for users to write.

Calling iced not useful reads like an uninformed take


> what specific documentation do you think are lacking? Tutorials?

examples beyond tiny todo app/best practices would be a great start.

> Tutorials? That's for users to write.

sure, and how's that going for them? there are near zero tutorials out there, and as someone looking to build a desktop tool in rust, they've lost me. maybe i'm not important enough for them and their primary goal is to intellectually gatekeep this tool from the vast majority for a long time, in which case, mission accomplished


there are literally dozens of examples, including many apps you can reference. come join the discord and check out the showcase channel. I've written and published probably 50-100 examples to show best practices to people who want to learn more. I basically leave zero questions unanswered on that server, unless they are so far out of my wheelhouse that I can't answer them, but even then I might point you to the right resource or person...and I'm not even part of the team. the community is just wonderful IMHO

> sure, and how's that going for them? there are near zero tutorials out there, and as someone looking to build a desktop tool in rust, they've lost me. maybe i'm not important enough for them and their primary goal is to intellectually gatekeep this tool from the vast majority for a long time, in which case, mission accomplished

26.5k stars on github and a flourishing community of users, which grows noticeably larger every day. new features basically every week. bug fixes sometimes fixed in literal minutes.

it's not a matter of gatekeeping, but a matter of resources. iced is basically the brainchild of a single developer (plus core team members who tackle some bits and pieces of the codebase but not frequently), who already has a day time job and is doing this for free. would you rather him write documentation—which you and I could very well write—or keep adding features so the library can get to 1.0?

I encourage you to look for evidence that invalidates your biases, as I'm confident you'll find it. and you might just love the library and the community. I promise you a warm welcome when you join us on discord ;-)

here are a few examples of bigger apps you can reference:

https://github.com/squidowl/halloy

https://github.com/hecrj/icebreaker

https://github.com/hecrj/holodeck

and my smaller-scale examples (I'm afraid my own big app is proprietary):

https://github.com/airstrike/iced_receipts a simple app showing how to manage multiple screens for CRUD-like flows

https://github.com/airstrike/pathfinder/ a simple app showing how to draw on a canvas

https://github.com/airstrike/iced_openai a barebones app showing how to make async requests

https://github.com/airstrike/tabular a somewhat complex custom widget example


> iced is basically the brainchild of a single developer (plus core team members who tackle some bits and pieces of the codebase but not frequently), who already has a day time job and is doing this for free.

This single-handedly convinced me not to rely on anything using Iced. I have no patience left for projects with that low a bus factor.


Can't please everyone


this is cool! i appreciate the warm invite. I really like your repo! They should include these examples in their primary repo. I did bump into halloy/icebreaker, etc but i just don't really find reading through massive repos a great entrypoint into whether a library/framework makes sense for me. I'll have to seriously look into it again, i do really like a vibrant community, and a lively discord is a nice close second. Thanks!


glad to hear it and thanks for the kind words!

I'll be waiting for you on Discord ;-) my username is the same there so ping me if you need anything

and I forgot to link to a ridiculously cool new feature that dropped last week: time travel debugging for free

https://github.com/iced-rs/iced/pull/2910

check out the third and fourth videos!


wow that's actually quite awesome


At some point you will need to realize that the endless people commenting about the lack of documentation is an issue with Iced, and the proverbial head in the sand approach will not help you.

UI frameworks typically need more than just the type of documentation that Rust docs provide. We see this with just about every UI framework around.

Just write some tutorials already.


I'm not a maintainer or a member of the project, just an interested user.

Tutorials might be nice, but the library is evolving fast. I'm happier the core team spent time working on an animations API and debugging (including time travel) since the last release instead of working on guides for beginners.

Maybe that changes after 1.0.

Until then, countless users have learned to use it. Also iced is more a library than a framework. There's no right answer to the problems you'll be trying to solve, so writing guides on "best practices" is generally unhelpful if not downright harmful.


> Until then, countless users have learned to use it.

And countless others have requested exactly what I'm saying here. Cuts both ways.

> There's no right answer to the problems you'll be trying to solve

There's no right answer in e.g AppKit or UIKit, but having actual guides for those ecosystems has been crucial for their uptake/usage over the past decade or so. UI frameworks and libraries are not like standard developer tools and need additional documentation.


Then you should try egui. It has a lot of examples and it is among the most mature libraries along with iced and slint, without the licensing problems


egui is nice but its API changes a lot between versions which makes it hard to rely on. Slint is stable and well documented. Its license is open source and also free to use in many cases so there is no real issue there.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: