Desktop Apps

A desktop application is a user-interface for your CLI program, giving the user an easy way to interact with your code. These programs include but are not limited to music players, video games, and calculators. Python makes it easy for programmers to create these applications by providing several easy to use modules that can help get the job done, for example, Tkinter, WxPython, and PyQt.


PyQt is a GUI widgets toolkit. It is a Python interface for Qt, one of the most powerful, and popular cross-platform GUI library.

Web Apps

A Web framework is a collection of packages or modules which allow developers to write Web applications or services without having to handle such low-level details as protocols, sockets or process/thread management. Python offers programmers a variety of frameworks, such as Flask and Django, to develop amazing websites quickly and efficiently.


Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.

Mobile Apps

Python doesn’t have built-in mobile development capabilities, but there are packages you can use to create mobile applications, like Kivy, PyQt, or even Beeware’s Toga library. These libraries are all major players in the Python mobile space.


Kivy is a free and open source Python framework for developing mobile apps and other multitouch application software with a natural user interface.