Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
ogoffart
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
31.
▲
by
ogoffart
1y ago
Since others are sharing Rust GUI libraries, I’ll mention Slint [ https://slint.rs ] a native GUI toolkit written Rust. It has a declarative domain specific languages, editor tools, and has been stable with no breaking API changes
32.
▲
by
ogoffart
1y ago
Hi, I'm one of the developers behind Slint. Sorry to hear Slint didn't work out for you. We’re aiming for a great developer experience, so I’d love to understand what specifically went wrong.
33.
▲
by
ogoffart
1y ago
> Qt level GUI framework Trying to bring that with Slint: https://slint.rs
34.
▲
by
ogoffart
1y ago
> Rust could get a rock solid portable GUI toolkit that doesn't rely on a webview [...], but it's not there yet. What would you say is missing in Slint? > probably not much harder than wrapping Qt, to be honest There are alr
35.
▲
by
ogoffart
1y ago
Slint is free for desktop. Slint is under three licenses: GPL, or royalty-free on desktop/mobile, or paid for embedded. So you only have to pay if you sell hardware.
36.
▲
by
ogoffart
1y ago
I actually wrote Rust bindings for Qt a while back: https://github.com/woboq/qmetaobject-rs/ . I'm curious to see how Qt's own take with Qt Bridges will work out. That said, I’ve since moved on and now wo
37.
▲
by
ogoffart
1y ago
Off-topic, but the idea of "colored functions" from the "What Color is Your Function" article doesn't apply to Rust's async/await. That article is about JavaScript before it had async/await, when it u
38.
▲
by
ogoffart
1y ago
Just wanted to mention that Slint has had a stable API for over two years now. (We released Slint 1.0 more than two years ago and have kept things backward compatible since) So stable GUI APIs in Rust are possible. If you're looking fo
39.
▲
by
ogoffart
1y ago
I wrote a language server too, and I also went with "-lsp" naming because it's way more recognizable. "LSP" is kind of a brand. If you look at the list at https://microsoft.github.io/language-server-
40.
▲
by
ogoffart
1y ago
You can have a tree view Slint. There is one example in https://github.com/slint-ui/cargo-ui And also in https://github.com/LibrePCB/LibrePCB/pull/1504
41.
▲
by
ogoffart
1y ago
If you're looking for a stable GUI toolkit, there is Slint
42.
▲
by
ogoffart
1y ago
> This is going to silently break so much existing code The code was already broken. It was an undefined behavior. That's a problem with C and it's undefined behavior minefields.
43.
▲
by
ogoffart
1y ago
> Prior to the current version of Rust it was impossible to access methods on `Foo` when a `&dyn Bar` was passed. This has been working since Rust 1.0, I think: trait Foo { fn foo(&self); } trait Bar : Foo {
44.
▲
by
ogoffart
2y ago
I'm developer of Slint and I'm glad to see Slint mentioned. I want to clarify that we're not trying to mimic the web. We have a great vision for the desktop integration, but we unfortunately have limited resources. Our team
45.
▲
by
ogoffart
2y ago
Awesome project! Really cool to see that the UI is built with Rust and Slint, the GUI framework I’m working on. https://github.com/slint-ui/slint
46.
▲
by
ogoffart
2y ago
> I wonder if someone could make a decent cross-platform GUI toolkit to save us from the horribly slow Electron-hell we've carved out for ourselves. https://github.com/slint-ui/slint
47.
▲
by
ogoffart
2y ago
I tried once to contribute a fix to be able to use the track-pad on my laptop many years ago. But it was not accepted as the maintainer claimed it was an problem in userspace that did not process out of order events correctly. Despite none
48.
▲
by
ogoffart
2y ago
Even without auto you have the problem. return foo().bar(); No `auto` and you still don't know the return type of foo. And knowing the type might not be the only reason you'd want an IDE anyway. What is `foo()` doing? I w
49.
▲
by
ogoffart
2y ago
I've been using #pragma once in my C++ libraries for a decade and nobody ever reported any problem with that. I did get bug report about using perfectly standard C++ features that were not properly implemented in some compilers. > t
50.
▲
by
ogoffart
2y ago
You might want to give Slint a try. It's a cross-platform UI framework that supports C++, Rust, JS, and Python. https://slint.dev
51.
▲
by
ogoffart
2y ago
It's also possible to use JS (or TypeScript) on the desktop, without having the need for a browser or a webview. That's for example what we're trying to do with Slint https://slint.dev Then you get the good part o
52.
▲
by
ogoffart
2y ago
Here is another small project to revive the car thing with a clone of the previous UI written in Rust: https://devpost.com/software/car-thang
53.
▲
by
ogoffart
2y ago
I've observed it has become much better on my repository over the past few years. Discussions took a while to be adopted and I have to guide users to discussions through the CONTRIBUTING.md and issue template. For the few questions th
54.
▲
by
ogoffart
2y ago
I often edit the title and description of issues. I usually let the original content after a ### Original message ...
55.
▲
by
ogoffart
2y ago
So that's a fork of a ~10 years old fork of Qt. Copperspice originally forked, in part, because Qt was not close enough to the C++ standards, and now this (outdated) GUI library is being forked because they make use of a 4 years old C+
56.
▲
by
ogoffart
2y ago
Yes, we'd like to improve on that: https://github.com/slint-ui/slint/issues/4128
57.
▲
by
ogoffart
2y ago
There are 3 license: 1. GPL 2. Royalty-free (free of charge for desktop) 3. Paid license (which we hope is less constraining than the Qt commercial one)
58.
▲
by
ogoffart
2y ago
(Shameless plug) If you're looking to go away from Qt, you can check out Slint https://slint.dev Being inspired from QML, Qt users should feel at ease. The license model is hopefully less constraining than the Qt one.
59.
▲
by
ogoffart
2y ago
Some crates are better than other. For Slint (Another GUI toolkit in Rust), we try to keep our API as stable as possible for as long as possible. We use other crates behind the scene such as winit and co., but we don't expose them in o
60.
▲
by
ogoffart
2y ago
Why do you think this is? Some reason I can think of: - Can't update the compiler (eg, porting the code base to the new compiler is too complicated) - No compiler support for the new standard that target a specific platform that one st
More ›