I'm going to watch it righht now. I'm looking an alternative to tkinter since I'm building a chatbot app and performance and capability is lacking badly on tkinter.
Saying I don't recommend it because it is harder, is like saying I don't recommend getting a famous singer, because it is harder then just singing as hobby. As a programmer you should always look at what is best for your product not for you. If the development cost is higher, because you need to learn a new framework, that would be a reason, but laziness should never be. Atleast not for professionals.
You can learn the basics of PyQt in few days btw. The only thing I had problems with is signals and language files, so I just programmed my applications without it and used my own implementation of language files. I think it is more convenient for small applications in development to have human-readable language files than binaries, so I was a bit confused about it.
I'm halfway in so far, and this is a very good presentation! The only nitpick (or call it a bit of trivia maybe?) is that Kivy was actually invented to be used on large, horizontal multitouch surfaces (think a 80" TV with a multitouch frame, laying on a table). Kivy is kind of the only of these frameworks I can vouch for, but the multiplatform aspect is _massively_ important (and quite underrated too) in real-life scenarios, industrial or enterprise included (or especially). Speaking of larger scale, I suspect PyQT has better documentation and support for enterprise-oriented features, like headless packaging in CI, and general coding practices that encourage testability ; but Kivy probably comes close second there, with good tools like Telenium and some mostly-working headless packaging for all platforms (iOS possibly being the one exception here).
Great presentation, exactly what I was looking for, thanks! Since there are not a lot of Kivy tutorials, I think you could boost your chanel a lot, if you made Kivy tutorials. I would definetly watch them :-)
One thing that lacked in the video was a better description on PyGUI. Nothing was said about it being a language binding (like wkPython) of the C++ library IM GUI, neither about it being an Immediate Mode kind of interface, and these two are very important aspects. People use Im GUI to make interfaces for projects like game engines, visualizers, small tools and more. In the project repo, there is a list of users/companies using it and it is impressive how many big companies are listed there. I don't know about PyGUI, but ImGUI is renderer agnostic: you can use OpenGL, DirectX, or even Vulkan api to render the gui.
Even though audio quality wasn't that good but the content was top notch. Very informative and we'll paced. I have learnt both pyqt5 and tkinter and in my opinion pyqt5 is a better choice in the grand scheme of things.
I was skeptical that you would accurately explain the differences. But, was pleasantly surprised. My advice is to learn PyQt5. Yes, much more to learn, but other than a deeper learning curve, there are really almost no downsides. The other choices have limitations. Most important, PyQt5 can create desktop applications that users can't discern from any other windows application.
@@TV-eh9fi PySide and PyQt are basically the same. PyQt is actually free, unless you plan on selling a product built with it or running a major business with it.
I have been reading a lot on the GUI interfaces for a week now - until I saw this post Excellent analysis and Excellent presentation - no dragging and drawling - brief and to the point Would have loved to see PySimpleGUI also - but that's OK - while I consider this good - it seems to be a one man army - and hence not sure about the future. Good Job !
Hi, thanks for your feedback! As I told the above comment, I originally didn't include examples since most of my work is only in PyQt5 or Kivy. I didn't want to use other people's projects in my video :) However, I do understand your point, so for a future video, I'll try to make some examples or contact other people and ask their permission for bigger projects to show :)
@@codefirstwithhala While I understand the (OP's) criticism, I feel like it would paint an incomplete picture - still, showing a "hello world" for each framework could have been nice (I know that's what convinced me to use Kivy in the first place half a decade ago) but as I said maybe not as useful of a comparison point as it might seem. As to comparing bigger projects, again, if it's not strictly the same project ported to different frameworks, it's not that useful ; and even then, you'd need the ports to be made by people with an equal level of proficiency in each framework, which seems like an impossible constraint to fulfill.
I think it's a good point but per "The Cheaterman" not practical considering... I also have to say, Hala did an excellent job presenting some top relevant points for choices. I'm just working with Tkinter too get started and will probably eventually move too Kivy considering I intend to drive my projects to multiple device types but who knows, we'll see. I think, it was a useful presentation and covered the topic pretty well.
I would say Kivy is almost as hard as PyQT in some ways just because the kv language muddies the documentation at times and obscures how the library works. It's easy until you need to do something even slightly customized.
I also find Kivy pretty hard. KV language is not the problem, it's the way KV and PY defined functions and widgets communicate with each other from one file to another. Things like app, root, id, ids, self (class), self (widget) takes a lot of time to understand. Another frustrating problem is APIs that does the same thing can have different syntax in every widget forcing you to constantly check documentation (example: background_color, color, md_bg_color, bg_color, etc. same function, different name in different widget). Some widget respond to pos_hint and size_hint, some ignore completely, some only accept None values, some crash if None values used. Latter is especially true with KivyMD extension.
You: PyGui is good for beginners Me: what's easier than drag and drop? 😂 Not a beginner to python but a beginner to GUIs great video helped me out a lot thank you very much.
@@lmnts556 it's up to you, which one your comfortable with..my opinion if i'm working for someone else's app, sure i wouldn't mind Qt and that's if I can wrap around my perspective around Qt
@@chesteringosan7939 You mean pyQT5? Or QT for python? Its so confusing lol. I am not comfortable with any of them but I would like to make software for windows. Its really hard to select one.
@@lmnts556 Qt for Python, i think any of them, what i know about that is it is not as latest as c++ Qt.. but if you just want to do windows as personal project i recomment tkinter, but it is not as modern looking..or 'Kivy' it is almost as easy as Tk and is good looking but i had so much trouble compiling it.
I would like to know which of these allow you to create proprietary (not open source) applications-without paying for use of the library. AFAIK, the commercial version of PyQt is very expensive. What about Kivy and wxPython? Tkinter is irrelevant unless you like to create programs that look like they are 30-40 years old.
I'm just getting into Tkinter and dev'd a couple examples. The one I'm finishing right now looks, pretty nice. I guess I'm not certain what you are referring too regarding how old it looks? It appears too take the window style of my current window manager, etc... Please explain if you would? Thanks.
@@TheJacklwilliams I suspect you are using Microsoft Windows and so are accustomed to the old fashioned look of Tk. TK on a Mac looks like the Mac OS looked 30+ years ago. It looks so unprofessional that I'd be embarrassed to use it in an application presented to the public.
@@melellington1333 Thanks Mel. Nope, I’m using it on Linux. Specifically Raspberry Pi OS 64bit. It looks great here. However, per your point, especially when taking “Cross-Platform” for granted, I could see how that same look may not translate well too other platforms. Thanks for the heads up. It’ll work while I learn some front end basics but, moving past that I’ll need too look to other options
Hi! Yes it is possible! Although Turtle is based on Tkinter, and it is much easier to do that way, it's still possible to make it work with Kivy, with a bit more code.
@@rohitsonawane4592 To be perfectly fair, this may not be such a great idea, given Kivy is based on OpenGL, there's more flexibility to be had by just leveraging that :-)
Hmm... I have around 4 years of experience with tkinter and I can confidently say that it is completely possible to make modern and good looking applications (with some help from ttk). Tkinter is a very powerful GUI builder, you just need to dive deeper and see the abundant resources that tkinter has to provide. For a small to medium size application, tkinter is a very good choice. Only problem is that for larger and more complex applications it might undergo performance issues- at which case its better to use a different language (like cpp) to make your gui. Please do a bit more research, and go through the tk and ttk documentation before assuming that tkinter is "underpowered".
Thank you all for watching ❤ Updated Top 7 Python GUI libraries in 2023 video: ruclips.net/video/QPHtNqGNuX4/видео.html
I'm going to watch it righht now. I'm looking an alternative to tkinter since I'm building a chatbot app and performance and capability is lacking badly on tkinter.
Would have loved to see a sample app using each of the frameworks discussed.
I believe that is part of your research, you can't expect others to get your own job done, just put some effort
@@blancostudio3d oh come on
@@blancostudio3d It was a nice and useful tip not a complaint.
Why are you so mad?
@@blancostudio3d Typical Linux/Developer response.
@@peterbreis5407 Pretty sure she's not a Linux developer lol
Really great video. Been waiting for someone to make one so precise as this for a long time. Thank you! Thank you! Thank you!
Saying I don't recommend it because it is harder, is like saying I don't recommend getting a famous singer, because it is harder then just singing as hobby. As a programmer you should always look at what is best for your product not for you. If the development cost is higher, because you need to learn a new framework, that would be a reason, but laziness should never be. Atleast not for professionals.
You can learn the basics of PyQt in few days btw. The only thing I had problems with is signals and language files, so I just programmed my applications without it and used my own implementation of language files. I think it is more convenient for small applications in development to have human-readable language files than binaries, so I was a bit confused about it.
I'm halfway in so far, and this is a very good presentation! The only nitpick (or call it a bit of trivia maybe?) is that Kivy was actually invented to be used on large, horizontal multitouch surfaces (think a 80" TV with a multitouch frame, laying on a table). Kivy is kind of the only of these frameworks I can vouch for, but the multiplatform aspect is _massively_ important (and quite underrated too) in real-life scenarios, industrial or enterprise included (or especially). Speaking of larger scale, I suspect PyQT has better documentation and support for enterprise-oriented features, like headless packaging in CI, and general coding practices that encourage testability ; but Kivy probably comes close second there, with good tools like Telenium and some mostly-working headless packaging for all platforms (iOS possibly being the one exception here).
This is for sure the best comparison i have ever seen. Been thinking of trying out writing a gui for uears. Great video!
Great presentation, exactly what I was looking for, thanks!
Since there are not a lot of Kivy tutorials, I think you could boost your chanel a lot, if you made Kivy tutorials. I would definetly watch them :-)
Exactly the kind of video I was looking for, a brief and effective package. I am going to learn PyQT5. Thank you!
One thing that lacked in the video was a better description on PyGUI. Nothing was said about it being a language binding (like wkPython) of the C++ library IM GUI, neither about it being an Immediate Mode kind of interface, and these two are very important aspects. People use Im GUI to make interfaces for projects like game engines, visualizers, small tools and more. In the project repo, there is a list of users/companies using it and it is impressive how many big companies are listed there. I don't know about PyGUI, but ImGUI is renderer agnostic: you can use OpenGL, DirectX, or even Vulkan api to render the gui.
Even though audio quality wasn't that good but the content was top notch. Very informative and we'll paced.
I have learnt both pyqt5 and tkinter and in my opinion pyqt5 is a better choice in the grand scheme of things.
This is awesome, thanks a lot for putting so much effort into your explanations!
Brilliant video....First year computer engineering student i always wanted a comparison video
I was skeptical that you would accurately explain the differences. But, was pleasantly surprised. My advice is to learn PyQt5. Yes, much more to learn, but other than a deeper learning curve, there are really almost no downsides. The other choices have limitations. Most important, PyQt5 can create desktop applications that users can't discern from any other windows application.
but it is not free
@@TV-eh9fi PySide and PyQt are basically the same. PyQt is actually free, unless you plan on selling a product built with it or running a major business with it.
WxPython looks native, great for desktop apps. Been a 10 year user of it. Lots of widgets and make custom ones too. I feel no need to go to PyQt5
Code with Harry is best channel to learn coding.
I have been reading a lot on the GUI interfaces for a week now - until I saw this post
Excellent analysis and Excellent presentation - no dragging and drawling - brief and to the point
Would have loved to see PySimpleGUI also - but that's OK - while I consider this good - it seems to be a one man army - and hence not sure about the future.
Good Job !
Awesome video , thank you very much please keep going , greetings from Costa Rica
Thank you! Glad you enjoyed.
Qt is nice because of the designer, but understanding the system as a whole was a real stumbling block for me. Wish I'd started with PyGui.
Thanks so much for the helpful video on this topic. Just getting started with Python GUI programming so this is very timely and helpful!
Thanks again!
This is what I'm looking for ..thank you very much for creating this vid ^^
Thanks alot for this best info. let me watch this of 2023 too
VERY INFORMATIVE. This kid will definitely help you decide which one to use!
Really, very good analysis. Thank you.
Glad you liked it!
Awesome video! I am a beginner and was quite lost on which GUI library is which.
Love you review! Really, save me hours or maybe days of searching.... Thanks a milion! You just won a follower
من لهجتك اتوقع انك عربية. شكراً على هذا الفيديو 3>
Great video, provides a quick and clear scenario of each option. Thanks!
How can a 18 minute video on graphical interfaces be all text and no examples?
Hi, thanks for your feedback! As I told the above comment, I originally didn't include examples since most of my work is only in PyQt5 or Kivy. I didn't want to use other people's projects in my video :) However, I do understand your point, so for a future video, I'll try to make some examples or contact other people and ask their permission for bigger projects to show :)
@@codefirstwithhala While I understand the (OP's) criticism, I feel like it would paint an incomplete picture - still, showing a "hello world" for each framework could have been nice (I know that's what convinced me to use Kivy in the first place half a decade ago) but as I said maybe not as useful of a comparison point as it might seem. As to comparing bigger projects, again, if it's not strictly the same project ported to different frameworks, it's not that useful ; and even then, you'd need the ports to be made by people with an equal level of proficiency in each framework, which seems like an impossible constraint to fulfill.
I think it's a good point but per "The Cheaterman" not practical considering... I also have to say, Hala did an excellent job presenting some top relevant points for choices. I'm just working with Tkinter too get started and will probably eventually move too Kivy considering I intend to drive my projects to multiple device types but who knows, we'll see. I think, it was a useful presentation and covered the topic pretty well.
I would say Kivy is almost as hard as PyQT in some ways just because the kv language muddies the documentation at times and obscures how the library works. It's easy until you need to do something even slightly customized.
I also find Kivy pretty hard.
KV language is not the problem, it's the way KV and PY defined functions and widgets communicate with each other from one file to another. Things like app, root, id, ids, self (class), self (widget) takes a lot of time to understand.
Another frustrating problem is APIs that does the same thing can have different syntax in every widget forcing you to constantly check documentation (example: background_color, color, md_bg_color, bg_color, etc. same function, different name in different widget). Some widget respond to pos_hint and size_hint, some ignore completely, some only accept None values, some crash if None values used. Latter is especially true with KivyMD extension.
Thank you, the information is so nice helped me alot.
Thank you for making such an informative video, I was looking for something like this,
Beautiful presentation and beautiful voice 😊
Thanks for the information. I might need more explanation.
Great job
What about PySimpleGUI? Where does that fit?
Thank you, you provided enough information :D
such a nice explanation. thanks for the video. :)
great comparison! i love the video
Greate Comparision ... good work ...keep it up
Sweet voice. thanks for your explanation
Your voice is too cute!!! And so are your tutorials.
Hi, can u show interaction between pdf to python to mysql? And mysql to python to tinker to generate excel?
Do you mean Dear PyGui or PyGui?
You: PyGui is good for beginners
Me: what's easier than drag and drop?
😂
Not a beginner to python but a beginner to GUIs great video helped me out a lot thank you very much.
Very interesting.
Amazing content, thank you so much!
The order of introduce is the order of Hala's favourite
Wow, That was super Usefull thanks👌🏻
imma going for QT :)
also with QT you need to spend hours and hours trying to understand their terms and conditions
So what would you recommend?
@@lmnts556 it's up to you, which one your comfortable with..my opinion if i'm working for someone else's app, sure i wouldn't mind Qt and that's if I can wrap around my perspective around Qt
@@chesteringosan7939 You mean pyQT5? Or QT for python? Its so confusing lol. I am not comfortable with any of them but I would like to make software for windows. Its really hard to select one.
@@lmnts556 Qt for Python, i think any of them, what i know about that is it is not as latest as c++ Qt.. but if you just want to do windows as personal project i recomment tkinter, but it is not as modern looking..or 'Kivy' it is almost as easy as Tk and is good looking but i had so much trouble compiling it.
@@chesteringosan7939 is it possible to make tkinter modern looking? Did you have issues with compiling Kivy to a windows platform or to mobile?
This video is super great... Well done
How can you compare GUIs without showing any one?
Thanks Hala
Excellent video thankyou
this is a very good video
Very good comparison.
thank you
Good presentation. Kivy needs python 3.7 or lower. Does not work with python 3.8 or higher. At least for now.
Kivy is ok with 3.9.
@@JL-nb7ep Thank you. Good to know.
Nice job. You should do a program in KiVy with text boxes and demonstrate how to launch it.
Where is Pyside?
What about licensing?
Thank you. Just thank you.
thank you, this vedio is very helpfull
thx for the good video
@15:50 Listen borrow ... ≈≠≈ func[{( awk SED .
SHOW US.
A picture is worth a thousand words.
The G in GUI stands for Graphical, not words.
User Interface
thank you for your effort
I have one doubt in tkinter can I ask
Where is pyGTK?
PyQT is totally OOP and very "feature rich" Tkinter OOP techniques are NOT required but very useful.
Great now i have an idea. think you;;;
Stayaway from Tkinter, thank you for your video
Nice video and informative
I would like to know which of these allow you to create proprietary (not open source) applications-without paying for use of the library. AFAIK, the commercial version of PyQt is very expensive. What about Kivy and wxPython? Tkinter is irrelevant unless you like to create programs that look like they are 30-40 years old.
I'm just getting into Tkinter and dev'd a couple examples. The one I'm finishing right now looks, pretty nice. I guess I'm not certain what you are referring too regarding how old it looks? It appears too take the window style of my current window manager, etc... Please explain if you would? Thanks.
@@TheJacklwilliams I suspect you are using Microsoft Windows and so are accustomed to the old fashioned look of Tk. TK on a Mac looks like the Mac OS looked 30+ years ago. It looks so unprofessional that I'd be embarrassed to use it in an application presented to the public.
@@melellington1333 Thanks Mel. Nope, I’m using it on Linux. Specifically Raspberry Pi OS 64bit. It looks great here. However, per your point, especially when taking “Cross-Platform” for granted, I could see how that same look may not translate well too other platforms. Thanks for the heads up. It’ll work while I learn some front end basics but, moving past that I’ll need too look to other options
@@melellington1333 Search for a youtuber named “Programmed“ who creates modern GUI with Tkinter. :)
Thank you
I love your voice!😍
Excellent.
It is possible to integrate turtle graphics with Kivi GUI ???
Please Answer.......
Hi! Yes it is possible! Although Turtle is based on Tkinter, and it is much easier to do that way, it's still possible to make it work with Kivy, with a bit more code.
@@codefirstwithhala please make a video related that if you possible. It will be very useful for me.
@@rohitsonawane4592 To be perfectly fair, this may not be such a great idea, given Kivy is based on OpenGL, there's more flexibility to be had by just leveraging that :-)
Awesome review.
Excellent... keep going
Thank you, I will!
Big apps possible?. I mean apps like Google or gmail etc?
@@charlesm.2604 oh alright, thanks!
1
Where is PySimpleGui?
great video
Hi Hala..
@1:35 🍞 ther printer DCP Shift -|
Whats up Hotty.
that was epic
Where’s eel
Grammaly is checking your text, you know what it means.....
like you said kivy or pyqt5 :) but i didn't decide yet.
Kivy
QtDesigner is a must have if you are designing a complex UI.
0:00
rip headphone
Electron is missing 🥺
That is JavaScript library
go with open source make money then donate
Yes :-) you are totally right!
Please can you explain abit further?
Please share more on this
Pyqt is not free
everything is in air
As per my opinion tkinter is too underpowered to be included in top gui list :)
She says that is good for beginners. But you are right any app build with tkinter looks ancient.
Hmm... I have around 4 years of experience with tkinter and I can confidently say that it is completely possible to make modern and good looking applications (with some help from ttk). Tkinter is a very powerful GUI builder, you just need to dive deeper and see the abundant resources that tkinter has to provide. For a small to medium size application, tkinter is a very good choice. Only problem is that for larger and more complex applications it might undergo performance issues- at which case its better to use a different language (like cpp) to make your gui. Please do a bit more research, and go through the tk and ttk documentation before assuming that tkinter is "underpowered".
@@officialspamaccountit probably falls weak when creating dynamic applications, also i can be wrong as i have been using ttk for just past 2 months
GOOEE? (GUI)
So kivy it is 😂😂😂
great comparison! i love the video