Hello all!

I’m looking for a simple to use GUI for my FOSS python project.

I have tried tkinter which is, uh, usable but seriously oldish? Good point seems to be it’s basically inbuilt in python so not hard to distribute.

PyQt is on the heavy end, I just need windows, scrollbars and buttons (basically, see below), also I wonder about the license of Qt (it’s always a PITA when trying to do C++ Qt) and also what you must package when you distribute the soft.

Must haves:

  • Frames (I need two independent lists of files and another with global info)
  • Text, buttons & colors, an “open file” dialog. Editable text field.
  • Scrollable lists, with clickable icons (ex. “Filename [Delete icon] [Update icon]”)
  • Async behaviour (so that a thread can update one part when it sees fit)
  • Works on most popular Linux
  • FOSS (I don’t want to change everything when the soft dies, or be on the enshittification ride)

Nice to have :

  • Possibility to make pop out windows (like a settings manager)
  • Mac & Win support

Cheers and thank you!

  • Luke
    link
    fedilink
    English
    56 months ago

    I’ve historically used PySide (the free-license version of Qt) but for simple stuff like you’re looking for, you might get some mileage out of the Toga GUI toolkit. It’s relatively new, but promising.

    I’ve actually been pretty impressed with the whole suite of BeeWare stuff in my informal testing so far; it’s a nice little bundle of tools. (Specifically I’m interested most in their distribution approach; building Python apps for distribution is a giant fucking pain, but this group seems to have improved the experience significantly.)

    • @[email protected]OP
      link
      fedilink
      16 months ago

      Thank you, but they both seems to be not very used? I could find some information but really not very much.L Like how to make tabs :-)

      • Luke
        link
        fedilink
        English
        16 months ago

        I haven’t used it much myself, it could be too early in it’s development to be useful, just thought I’d mention it though!

        It looks like tabs are supported, but they call them an OptionContainer.

        It seems like one sacrifices a lot of customizability for simplicity of code with this toolkit, but that might be fine for some use-cases.