Live data from Hacker News

Show HN: Slint – A declarative UI toolkit for embedded and desktop

slint.dev

61–70 of 152 posts

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#61
post #50

There is often a criticism of Javascript, that new frameworks seem to appear every week. But it honestly feels like every week on HN there is a new Rust UI project showing up. Whether it is some new HTML/web thing, a native app thing, a TUI thing, etc. Don't get me wrong, I think that is the sign of a very healthy ecosystem. I am just curious how the Rust evangelists will spin this. Somehow this constant churn on the…

While there are a lot of Rust UI frameworks, none of them are really recommended for production use yet. I suspect a few of the will die off and work will coalesce a few once things mature a bit.

Another nice feature of the Rust UI ecosystem is that lots of it is being built in a modular way. For example I maintain a layout engine [0] library which just does layout and can be easily integrated by anybody creating a UI library. And there a bunch of similar composable libraries covering rendering, text layout, accessibility, window creation, clipboard access, etc.

[0]: https://github.com/DioxusLabs/taffy

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#62

I just spent the last two weeks choosing an embedded ui framework and then building out a little demo to test out its capabilities. I settled on Slint and have been very impressed with the design of the domain specific language they came up with. It’s small, simple, powerful and easy to learn IMO. The vs code extension for real time gui feedback is amazing. I’ve used swift ui before and Slint is as much of a joy to u…

I assume you're already doing this since you're on a microcontroller, but have you set [profile.release] codegen-units = 1 lto = true

ELI5 what this does?

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#63

Earlier quoted context omitted.

I assume you're already doing this since you're on a microcontroller, but have you set [profile.release] codegen-units = 1 lto = true

ELI5 what this does?

The lto setting controls the -C lto flag which controls LLVM’s link time optimizations. LTO can produce better optimized code, using whole-program analysis, at the cost of longer linking time.

The valid options are:

    false: Performs “thin local LTO” which performs “thin” LTO on the local crate only across its codegen units. No LTO is performed if codegen units is 1 or opt-level is 0.
    true or "fat": Performs “fat” LTO which attempts to perform optimizations across all crates within the dependency graph.
    "thin": Performs “thin” LTO. This is similar to “fat”, but takes substantially less time to run while still achieving performance gains similar to “fat”.
    "off": Disables LTO.
Basically, increases performance at cost of compile time. Great for release builds, not so much for debug builds (because most of the time that rustc spends is on linking anyways.)

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#64

I just spent the last two weeks choosing an embedded ui framework and then building out a little demo to test out its capabilities. I settled on Slint and have been very impressed with the design of the domain specific language they came up with. It’s small, simple, powerful and easy to learn IMO. The vs code extension for real time gui feedback is amazing. I’ve used swift ui before and Slint is as much of a joy to u…

I wish that there was some GUI lib dedicated to small embedded systems, I just want to draw some buttons and sliders without eating hundreds of flash/ram...

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#65
post #50

There is often a criticism of Javascript, that new frameworks seem to appear every week. But it honestly feels like every week on HN there is a new Rust UI project showing up. Whether it is some new HTML/web thing, a native app thing, a TUI thing, etc. Don't get me wrong, I think that is the sign of a very healthy ecosystem. I am just curious how the Rust evangelists will spin this. Somehow this constant churn on the…

>>" Rendering scalable graphics efficiently is hard enough"

As a not-UI dev guy, what will be awesome is when a stack solves the scaling/swiping.

Imagine being able to swipe a UI from one UX to another UX -

I See my blood pressure on my E-watch... I swipe right to throw that details onto my laptop... ... I swipe up to throw that shit on the EMR at the doctors office...

Or I have a vitals monitor on my watch and when the ambulance picks me up they can just slurp my historics via my watch and an AI starts doing prognoses asap.

Those who do this, win all the money. (not to mention the threat this is to HOSPITAL CODES or INSURANCE PAYMENT CODES) -- Yeah those bitches will be upset when this happens.

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#66
post #12

Earlier quoted context omitted.

If you target desktop only probably Qt license (LGPL 3.0) is easy to use even in commercial projects. The problems comes if you want to target embedded, mobile platforms especially iOS or require some of their GPL modules (e.g. Charts, Data Visualization) Otherwise Qt is probsbly much more mature project and already has unofficial rust bindings

The current main problem is that Qt often releases new modules under GPL and commercial only licenses. For example, the new Qt GRPC implementation and then it is all or nothing. Qt commercial would force us to essentially buy two licenses because we have a second app that acts as a third party dll loading app. These dlls often crash and thus we moved them into a dedicated app we could simply restart, but Qt license w…

I think you have misunderstood the Qt licensing model when you say that you need two Qt licenses if you are building two separate applications?

The commercial licenses are a) per developer and b) per distributed device (if you distribute your software as part of a device), there is no per application licensing requirement.

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#68
post #64

I just spent the last two weeks choosing an embedded ui framework and then building out a little demo to test out its capabilities. I settled on Slint and have been very impressed with the design of the domain specific language they came up with. It’s small, simple, powerful and easy to learn IMO. The vs code extension for real time gui feedback is amazing. I’ve used swift ui before and Slint is as much of a joy to u…

I wish that there was some GUI lib dedicated to small embedded systems, I just want to draw some buttons and sliders without eating hundreds of flash/ram...

[deleted]

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#69
post #64

I just spent the last two weeks choosing an embedded ui framework and then building out a little demo to test out its capabilities. I settled on Slint and have been very impressed with the design of the domain specific language they came up with. It’s small, simple, powerful and easy to learn IMO. The vs code extension for real time gui feedback is amazing. I’ve used swift ui before and Slint is as much of a joy to u…

I wish that there was some GUI lib dedicated to small embedded systems, I just want to draw some buttons and sliders without eating hundreds of flash/ram...

Have you looked into fltk-rs?

Re: Show HN: Slint – A declarative UI toolkit for embedded and desktop

#70

Nice to see that Qt finally gets some competition! The pricing alone is a no-brainer. Now the only thing I'm missing from the demos is smooth scrolling :)

I can't find it now, but I remember looking at slint a few months back and finding out that native widget support on the desktop required QT. Is this not true?
Post reply on HN