PyQt is a Python binding of the cross-platform GUI toolkit Qt. Applications built with PyQt will run on any platform supported by Qt & Python including Windows, OS X, Linux, iOS and Android.

Created by Riverbank Computing, PyQt is free software (GPL licensed) and has been in development since 1999. PyQt5 was released in 2016 and last updated in October 2021.

For a complete guide to desktop application development with Python & PyQt, see the PyQt5 tutorial and my PyQt5 book Create Simple GUI Applications with Python & Qt.

Explore PyQt

Showing articles for All (276) PyQt6 (108) PySide6 (83) PyQt5 (235) Tkinter (77) PySide2 (81)

PyQt5 Signals, Slots & Events

Triggering actions in response to user behaviors and GUI events

Creating your first app with PyQt5

A simple Hello World! application with Python and Qt5

PyQt5 Widgets

Using QPushButton, QCheckBox, QComboBox, QLabel and QSlider widgets

First steps with Qt Designer

Use Qt Designer's drag and drop interface to design your PyQt5 GUI

NSAViewer, desktop Photobooth

Take photos of yourself, with a terrible camera.

Raindar, desktop Weather App

Pulling data from a remote API

7Pez, custom skinned Unzip

Skinning a PyQt5 decorationless window

Megasolid Idiom, a Rich Text Editor

Simple WYSIWYG editor in Python

Packaging PyQt5 apps with fbs

Distribute cross-platform GUI applications with the fman Build System

Palette

Simple colour palette in linear or grid layouts

Brown Note, desktop Reminder

Relieve your creative blockages with these interactive desktop reminders.

Failamp, a Multimedia Player

Multimedia playlist and player in Python, using PyQt

QtWebEngineWidgets, the new browser API in PyQt 5.6

Simplified page model and asynchronous methods

Tabbed web browsing

Use signal redirection to add a multi-tab interface

Mozzerella Ashbadger

The first steps building the browser with PyQt5

Adding application Help and About dialogs

Put some finishing touches to your application

Open and save HTML in a PyQt5 browser

Adding file dialogs to load and save HTML

15 Minute Apps

Common desktop apps in Python, using PyQt

Multithreading PyQt5 applications with QThreadPool

Run background tasks concurrently without impacting your UI

No2Pads, a simple Notepad clone

The QTextEdit widget does 90% of the work

PyQtConfig

A simple API for keeping your PyQt Widgets and config in sync

ColorButton

A color-selector tool for PyQt
1 2 3 4 5 6 7 8 9 10 11