Easy to use GUI creation for Raspberry Pi programs?
Randomish question here. I wrote a fairly basic program for an ESP32 using arduino that handles button presses for a little quiz thing. First person to hit the buzzer, it lights up and stores whoever hit first on the opposing team if the first person gets the question wrong stuff like that.
Currently I serve up the data from the ESP32 to an HMI (ignition) and let that program do all the heavy lifting of keeping score, grabbing questions from a sqlite database, etc. It's really good, but ignition maker's edition is only for person use and if I want to let my friends use it there's a lot they'd have to do to get it set up.
The nice thing about Ignition though, is it is a graphic ide that lets me design my screens like I was using photo editing software and assign event scripts to object on the screen (i.e. you press the button, it does all this code).
Is there something similar I could use on the Raspberry Pi that would let me use the built in GPIO to handle interrupts and talk to a shift register to handle lighting up the LED and let me build it in a graphical environment? I thought about going down the .net route, but it's cross-platform promises are a bit iffy from what I read. Tkinter looks promising, but I'd have to do all my window design in my head and my visualization isn't all that great, lol.
Any thoughts on things you've used and liked?
Currently I serve up the data from the ESP32 to an HMI (ignition) and let that program do all the heavy lifting of keeping score, grabbing questions from a sqlite database, etc. It's really good, but ignition maker's edition is only for person use and if I want to let my friends use it there's a lot they'd have to do to get it set up.
The nice thing about Ignition though, is it is a graphic ide that lets me design my screens like I was using photo editing software and assign event scripts to object on the screen (i.e. you press the button, it does all this code).
Is there something similar I could use on the Raspberry Pi that would let me use the built in GPIO to handle interrupts and talk to a shift register to handle lighting up the LED and let me build it in a graphical environment? I thought about going down the .net route, but it's cross-platform promises are a bit iffy from what I read. Tkinter looks promising, but I'd have to do all my window design in my head and my visualization isn't all that great, lol.
Any thoughts on things you've used and liked?
Re: Easy to use GUI creation for Raspberry Pi programs?
Check out Lazarus/Free Pascal
- drankinatty
- Posts: 168
- Joined: Thu Apr 06, 2017 4:35 am
Re: Easy to use GUI creation for Raspberry Pi programs?
There is no Point-n-Click GUI creation I know of that will associate events and let you tell it how you want things displayed by clicking a properties box and fiddling with attributes. There may be something like that someone has written, but I haven't run across it in a decade of Pi. The traditional GUI toolkits are not that bad to work with. You have your desktop toolkits Qt, Gtk, and your desktop agnostic types, e.g. wxwidgets and the like. If you are taking inputs from a handful of buttons, it wouldn't be too hard to pick one of the toolkits and just go from there.
All those mentioned, Qt, Gtk, WxWidgets, all have good tutorials you can work through in an hour or so.
Your other option is a web-application where you simply provide the data and then use the webby type tools (PHP, FontAwesome, and a bit of JS) to make the pages do anything you can dream up. Starting from scratch, those have a shallower learning curve.
On the other hand, if you are comfortable with C/C++, then adding a graphic front-end isn't that bad either, the only downside is if you have little experience working in those languages, it is a fairly long road from "Hello world" to making a Gui application. Where I to do it, I'd go the toolkit route, learn it once, it there for any project you have from here-on-out.
Sorry I know of no Silver-Bullet, but hopefully others can chime in. And then there is Python, I'm sure it has rudimentary graphic capabilities as well, but if I recall, it is generally from Qt or Gtk bindings.
All those mentioned, Qt, Gtk, WxWidgets, all have good tutorials you can work through in an hour or so.
Your other option is a web-application where you simply provide the data and then use the webby type tools (PHP, FontAwesome, and a bit of JS) to make the pages do anything you can dream up. Starting from scratch, those have a shallower learning curve.
On the other hand, if you are comfortable with C/C++, then adding a graphic front-end isn't that bad either, the only downside is if you have little experience working in those languages, it is a fairly long road from "Hello world" to making a Gui application. Where I to do it, I'd go the toolkit route, learn it once, it there for any project you have from here-on-out.
Sorry I know of no Silver-Bullet, but hopefully others can chime in. And then there is Python, I'm sure it has rudimentary graphic capabilities as well, but if I recall, it is generally from Qt or Gtk bindings.
- Paul Hutch
- Posts: 1021
- Joined: Fri Aug 25, 2017 2:58 pm
Re: Easy to use GUI creation for Raspberry Pi programs?
The closest thing to an easy point and click GUI design tool is Qt Designer.
https://doc.qt.io/qt-6/qtdesigner-manual.html
I use it to design the GUI for my PyQt based apps.
https://doc.qt.io/qt-6/qtdesigner-manual.html
I use it to design the GUI for my PyQt based apps.
- NotRequired
- Posts: 455
- Joined: Sat Apr 29, 2017 10:36 am
Re: Easy to use GUI creation for Raspberry Pi programs?
Feeding the AI, as everyone else..
Re: Easy to use GUI creation for Raspberry Pi programs?
Thanks, I'll check those out!
- andreamancuso
- Posts: 3
- Joined: Fri Nov 15, 2024 1:58 pm
Re: Easy to use GUI creation for Raspberry Pi programs?
Hi,
It's a still work in progress, but I am looking to fill this niche with https://github.com/andreamancuso/xframes
You would need to learn JavaScript or TypeScript, Node.js, React (no DOM, no CSS required). But you do get GPU-accelerated GUI development out of the box. I'd be happy to find out more about your requirements.
Cheers,
Andrea
It's a still work in progress, but I am looking to fill this niche with https://github.com/andreamancuso/xframes
You would need to learn JavaScript or TypeScript, Node.js, React (no DOM, no CSS required). But you do get GPU-accelerated GUI development out of the box. I'd be happy to find out more about your requirements.
Cheers,
Andrea
Re: Easy to use GUI creation for Raspberry Pi programs?
There's also Qt Creator which is a multi-platform development IDE (with Qt Designer buried within it). Frankly it's a bit of a pain to get "kits" configured and I currently only use it for console apps - though I do have kits configured to build using gcc/clang ninja/make and a kit for pico cross compiler. I have it use cmake projects for that stuff which means you can cobble together a script which will build the project from the command line without qtcreator.
The GUI side has lots of options. All I've ever done is try some examples. Basically if you've ever used Delphi/C++Builder it can be akin to that. Use the "designer" component to design (say) a form then click on the object to see its methods. Click on those and the IDE will create a wrapper. Alternatively you can code things from scratch. Probably the best way to evaluate it is to install qtcreator plus "examples" on some box and just go through them. Make darned sure the "examples" tab/item isn't empty in qtcreator or you'll give up on it. Many distros don't install the examples.
In an ironic quirk I've been building QT since forever but never had the time to learn how to use it. My desktop PC and my bookworm rpi are using QT 6.7.2 and QtCreator 14.0.1 but I'm sure the stock version will suffice. It's usable on a 4Gb rpi4. Takes a while to launch but usable thereafter (test rpi4 only has sdcard and a tmpfs /tmp/).
I do plan to release my "sideloaded" QT. I'm side-tracked with cross-compilers lately. I'll get back to it though.
The GUI side has lots of options. All I've ever done is try some examples. Basically if you've ever used Delphi/C++Builder it can be akin to that. Use the "designer" component to design (say) a form then click on the object to see its methods. Click on those and the IDE will create a wrapper. Alternatively you can code things from scratch. Probably the best way to evaluate it is to install qtcreator plus "examples" on some box and just go through them. Make darned sure the "examples" tab/item isn't empty in qtcreator or you'll give up on it. Many distros don't install the examples.
In an ironic quirk I've been building QT since forever but never had the time to learn how to use it. My desktop PC and my bookworm rpi are using QT 6.7.2 and QtCreator 14.0.1 but I'm sure the stock version will suffice. It's usable on a 4Gb rpi4. Takes a while to launch but usable thereafter (test rpi4 only has sdcard and a tmpfs /tmp/).
I do plan to release my "sideloaded" QT. I'm side-tracked with cross-compilers lately. I'll get back to it though.
Re: Easy to use GUI creation for Raspberry Pi programs?
Did you look at Squareline Studio? it seems to be the easiest to use and support LVGL very well.
Let me know what you think.
Let me know what you think.
Re: Easy to use GUI creation for Raspberry Pi programs?
I wrote a simple tile user interface library for 8th programming language. It uses Nuklear GUI and makes building dashboard style GUI and Pub/Sub clients really easy.
- Attachments
-
- tileui (2).png
- tileui (2).png (142.68 KiB) Viewed 16813 times
Re: Easy to use GUI creation for Raspberry Pi programs?
I've used Python and PySimpleGUI on the RPi.
Re: Easy to use GUI creation for Raspberry Pi programs?
If you like the basic language, you might want to take a look at PureBasic or FreeBasic. Here is his manual. I've recently started looking into it and it looks interesting and promising. Creating GUI - window and controls.
Installing basic on Raspberry PI OS https://www.youtube.com/watch?v=qCBxlhkINSA
Installing basic on Raspberry PI OS https://www.youtube.com/watch?v=qCBxlhkINSA
Re: Easy to use GUI creation for Raspberry Pi programs?
I currently use Glade on my RPi5
Raspberry pi 5 user (debian Trixie)
Pico 2W
Pico 2W
- raweggeater
- Posts: 9
- Joined: Fri Jan 17, 2025 12:55 am
Re: Easy to use GUI creation for Raspberry Pi programs?
Does ncurses work on Raspberry Pi? I dabble with that on Linux a few years ago.
- raweggeater
- Posts: 9
- Joined: Fri Jan 17, 2025 12:55 am
Re: Easy to use GUI creation for Raspberry Pi programs?
Oh nevermind. ncurses only works with C and not Python.
- DougieLawson
- Posts: 43604
- Joined: Sun Jun 16, 2013 11:19 pm
Re: Easy to use GUI creation for Raspberry Pi programs?
That's not true.raweggeater wrote: ↑Tue Apr 29, 2025 9:40 pmOh nevermind. ncurses only works with C and not Python.
https://docs.python.org/3/howto/curses.html
Languages using left-hand whitespace for syntax are ridiculous
DMs sent on Bluesky or by LinkedIn will be answered next month.
Fake doctors - are all on my foes list.
The use of crystal balls and mind reading is prohibited.
DMs sent on Bluesky or by LinkedIn will be answered next month.
Fake doctors - are all on my foes list.
The use of crystal balls and mind reading is prohibited.
Re: Easy to use GUI creation for Raspberry Pi programs?
I've been using the latest Pi version of the Object Oriented Basic program Xojo. The Pi version is free for console and GUI apps, and runs on Pi 3 and later - I'm using a Pi5. Paid versions allow distribution to Mac, Windows, Linux, iOS, Android, and the web.
https://xojo.com/raspberrypi/
My stuff usually talks to SQLite databases. I have found few problems.
https://xojo.com/raspberrypi/
My stuff usually talks to SQLite databases. I have found few problems.
Return to "General programming discussion"
Jump to
- Community
- General discussion
- Announcements
- Other languages
- Deutsch
- Español
- Français
- Italiano
- Nederlands
- 日本語
- Polski
- Português
- Русский
- Türkçe
- User groups and events
- Raspberry Pi Official Magazine
- Using the Raspberry Pi
- Beginners
- Troubleshooting
- Advanced users
- Assistive technology and accessibility
- Education
- Picademy
- Teaching and learning resources
- Staffroom, classroom and projects
- Astro Pi
- Mathematica
- High Altitude Balloon
- Weather station
- Programming
- C/C++
- Java
- Python
- Scratch
- Other programming languages
- Windows 10 for IoT
- Wolfram Language
- Bare metal, Assembly language
- Graphics programming
- OpenGLES
- OpenVG
- OpenMAX
- General programming discussion
- Projects
- Networking and servers
- Automation, sensing and robotics
- Graphics, sound and multimedia
- Other projects
- Media centres
- Gaming
- AIY Projects
- Hardware and peripherals
- Camera board
- Compute Module
- Official Display
- HATs and other add-ons
- Device Tree
- Interfacing (DSI, CSI, I2C, etc.)
- Keyboard computers (400, 500, 500+)
- Raspberry Pi Pico
- General
- SDK
- MicroPython
- Other RP2040 boards
- Zephyr
- Rust
- AI Accelerator
- AI Camera - IMX500
- Hailo
- Software
- Raspberry Pi OS
- Raspberry Pi Connect
- Raspberry Pi Desktop for PC and Mac
- Beta testing
- Other
- Android
- Debian
- FreeBSD
- Gentoo
- Linux Kernel
- NetBSD
- openSUSE
- Plan 9
- Puppy
- Arch
- Pidora / Fedora
- RISCOS
- Ubuntu
- Ye Olde Pi Shoppe
- For sale
- Wanted
- Off topic
- Off topic discussion