A collection of 15 small — minute — desktop applications written in Python using the PyQt framework. These Python GUI apps are intended as examples from which you can poke, hack and prod your way to writing your own desktop tools.
The 15 PyQt Desktop Apps
The apps showcase various parts of the Qt framework, including advanced widgets, multimedia, graphics views and decorationless windows. However, the most generally interesting/feature complete applications are Minesweeper, Solitaire and Paint.
The source code for all apps is available in the Github repository. All code is MIT licensed and free to use to in your own projects.
Web Browser in Python — "MooseAche"

An example web browser built with Python and Qt. Using the QtWebEngineWidgets system introduced in Qt5.6, this provides a single-window browsing experience with the usual controls, as well as saving and loading HTML.
Tabbed Web Browser in Python — "Mozzarella Ashbadger"

Mozarella Ashbadger is the latest revolution in web browsing! Go back and forward! Print! Save files! Get help! (you'll need it). Any similarity to other browsers is entirely coincidental.
Minesweeper Game in Python — "Moonsweeper"

Explore the mysterious moon of Q'tee without getting too close to the alien natives!
Moonsweeper is a single-player puzzle game based on the classic Minesweeper. The objective of the game is to explore the area around your landed space rocket, without coming too close to the deadly B'ug aliens. Your trusty tricounter will tell you the number of B'ugs in the vicinity.
Notepad Application in Python — "No2Pads"

A very simple notepad clone using the QTextEdit widget to handle more or less everything. Supports file loading, saving and printing.
Calculator Application in Python — "Calculon"

A simple calculator application implemented in Python using PyQt. The UI was designed in Qt Designer and the calculator operations are implemented using simple stack-based logic.
Word Processor in Python — "Megasolid Idiom"

The word processor for all your small, poorly formatted documents. An extension of the notepad, again using a QTextEdit but with rich text editing enabled.
Webcam/Snapshot App in Python — "NSAViewer"

With this webcam snapshot application you can take photos of what is currently being viewed by your webcam. Uses the Qt QtMultimedia framework for handling all the interaction with the camera, and supports multiple cameras if you have them.
Media Player in Python — "Failamp"

Simple app to listen to and watch videos and audio files, with built in playlist. Uses QtMultimedia and QtMultimediaWidgets to handle playback and manage the playlist.
Post-it Notes App in Python — "Brown Note" (Qt Designer)

Take temporary notes on your desktop, with this floating-note app. Notes are stored locally in a SQLite database.
Paint App in Python — "Piecasso" (Qt Designer)

Express yourself with PieCasso, the only painting app to feature ready made pictures of pie.
Piecasso is a clone of the Paint programme from Windows 95 (ish) with a few additions (and subtractions). The programme features standard tools including pen, brush, fill, spray can, eraser, text and a number of shapes.
Unzip Tool in Python — "7Pez" (Qt Designer)

Unzip your files with a cat. Drag-drop your zip file onto the floaty cat, and fill up it's Pez-file repository. Press the head to release the Pez (your files) into the same folder.
Translator App in Python — "Translataarrr" (Qt Designer)

A translator from any language (supported by Google translate) to pirate. This uses a remote API from http://api.funtranslations.com for English to Pirate translation, and a unofficial Python wrapper around Google translate for other languages to English.
Weather App in Python — "Raindar" (Qt Designer)

Get your daily weather and 15hr forecast. Data is provided by the free weather and forecast API from https://openweathermap.org/
Currency Converter in Python — "Doughnut" (PyQtGraph)

This is a simple currency exchange rate tracker implemented in PyQt, using the fixer.io API for data. The default setup shows currency data for the preceding 180 days.
Solitaire Card Game in Python — "Ronery" (QGraphicsScene)

The classic card Solitaire (Klondike) game with a North Korea / Team America: World Police theme. The game is otherwise identical, offering the same options. Built with PyQt, it uses QGraphicsScene to handle the play area.
Getting Started with These Python GUI Apps
To use each app you first need to install the requirements. In most cases the only requirements are PyQt5, and occasionally requests (for http requests). To install app-specific requirements change to the folder of the app and run:
pip3 install -r requirements.txt
Once the requirements are installed, you can run the app using Python 3.
python3 <filename>.py
The application window should appear.
Learn Python GUI Programming by Example
These 15 PyQt desktop applications provide practical, hands-on examples of Python GUI development. Whether you're building a simple calculator or a full-featured paint application, each project demonstrates key concepts in Qt widget programming, event handling, and application design. Browse the source code, modify it, and use it as a foundation for your own Python desktop applications.
License
All code is licensed under an MIT license. This allows you to re-use the code freely, remixed in both commercial and non-commercial projects. The only requirement is to include the same license when distributing.
The intent here is to allow as many people as possible to make use of this code, so you if you have specific license requirements or questions, feel free to ask — the answer is probably "yes."
Icons used in the applications are by Yusuke Kamiyaman.
PyQt/PySide 1:1 Coaching with Martin Fitzpatrick
Save yourself time and frustration. Get one on one help with your Python GUI projects. Working together with you I'll identify issues and suggest fixes, from bugs and usability to architecture and maintainability.