• Black616Angel
    link
    fedilink
    169 months ago

    For desktop UI: Rust

    Okay, what crate do you use for UI, that it is your goto?

    • @onlinepersona
      link
      English
      39 months ago

      I use slint. You can also use the rust bindings to GTK. There are a list of Rust GUI libs/frameworks at https://areweguiyet.com/

      It allows compiling to WASM too and being embedded in websites, but I haven’t had time to figure that out yet.

      • Turun
        link
        fedilink
        39 months ago

        How do you like the language to define the layout?

        I’m always wary of DSLs.

        • @onlinepersona
          link
          English
          29 months ago

          It’s quite alright and I find it intuitive. For my needs, simple, fast UIs with async support, it’s perfectly alright.

          The biggest problem I have is creating completely new UI elements (or components, as they are called in slint) from scratch. You can combine elements and make new ones, but if you want to create something completely new for example some new animation, or render graphs, or something, you’re going to have a bad time.

          • Turun
            link
            fedilink
            29 months ago

            Thanks for your impression.

            I’ve used egui twice now and there creation of custom components is easy and encouraged. I adapted a drop down menu to better suit my needs (typed input get highlighted in the available options) and it was easy to do so.

    • Turun
      link
      fedilink
      39 months ago

      I have used egui in two projects now. It’s super easy to write, but the immediate mode does put some limitations on what you can do.

      Iced seems to be pretty good as well, but having to put every single user interaction into a message enum sounds tedious.

      • RemindMeB
        link
        19 months ago

        Sorry, I didn’t understand that reminder. Please try again.

        Make sure you’re including the interval until you want to be reminded.

        Example: "@[email protected] about my dentist appointment in 2 hours"
        Example: "@[email protected] Message me in 5 minutes"
        

        For any issues contact my developer: Ategon

      • RemindMeB
        link
        19 months ago

        Sorry, I didn’t understand that reminder. Please try again.

        Make sure you’re including the interval until you want to be reminded.

        Example: "@[email protected] about my dentist appointment in 2 hours"
        Example: "@[email protected] Message me in 5 minutes"
        

        For any issues contact my developer: Ategon