“The easy way to create professional desktop applications”

The hands-on guide to making desktop apps with Python.

  • 258 pages of hands-on instruction
  • Build real apps not just toy examples
  • Includes 4 example applications
  • Compatible with Python 2.7 & 3.5+
  • All code free to reuse licensed MIT/BSD
  • Includes PDF, EPub and Kindle formats
  • FREE access to all future updates and expansions
  • 30 day money back guarantee

In this book I take you from the first principles of GUI design to professional apps you can be proud of
— Martin Fitzpatrick

Get the Ebook + Source ($9)

Or check the complete package

The book   The apps   Testimonials   About the author  

The detailed coverage of multithreading is something I couldn't find anywhere else, and you made it so simple!

Table of contents

  • Installing PyQt (Windows, Mac, Linux)
  • Creating a "Hello World!" Qt app
  • Basic Qt5 widgets in PyQt5
  • Designing apps with Qt Creator
  • Positioning widgets with Layouts
  • Using Signals, Slots and Events
  • Qt Dialogs, Menus and Actions
  • Advanced Signals and custom data
  • Model View Architecture the MVC-like interface in PyQt5
  • Bitmap graphics for widgets and visualisations
  • Create your own custom widgets
  • Multithreading Qt applications
  • Packaging and distributing applications

Includes 4 fully-functional applications to try out what you've learned.

What you'll learn

From basics to professional apps

Starting from the very basics of creating a desktop window the book takes you on a tour of the key features of PyQt you can use to build real-life applications.

All source code included and free to reuse.

Hands on, focused on results

Gives you what you need to build your own apps.

Less tedious reproductions of documentation, more practical reusable examples which you can use to create real applications.

Sample pages from the chapters "Basic Qt Features", "Qt Creator" and the Minesweeper demo application.

What people are saying

Good start, looking forward to updates covering more advanced topics such as interacting with databases and APIs.

The detailed coverage of multithreading is something I couldn't find anywhere else, and you made it so simple!

Great book, really got me started making Python GUIs!

Learn to make real apps

Build real fully-functional desktop applications instead of simple toy examples. These apps introduce complex features including working with events, custom signals and multithreading. Full source code for all apps included, free to copy and use in your own applications.

Web Browser, Mozarella Ashbadger


Simple Paint clone

About the author

Martin Fitzpatrick Senior Software Engineer

Developing PyQt apps for 8 years.

I have been developing PyQt5 apps for 8 years. Building desktop applications to make data-analysis tools more user-friendly, Python was the obvious choice. Starting with Tk, later moving to wxWidgets and finally adopting PyQt, I haven't looked back since.

I love the flexibility Python gives you to create fun and useful things quickly. Paired with Qt it's a great way to build professional apps on the desktop.

The Complete Package

Book & Video Course

Learn better when you can watch what is supposed to happen? You're not alone! That's why we have videos to back up much of the core tutorials.

  • Get the book and 2 ½ hour video tutorials
  • Lifetime access to new content updated regularly
  • Mix and match video and tutorials to suit your needs.
  • Hands-on tutorials with the skills you've learnt.
Upgrade to Ebook & Video ($19)


How will I get my purchase?

After completing your purchase you'll receive an email with a link to get your files and course. Keep it secret, keep it safe.

How do I get updates?

Each new release of the book will immediately be available on your account under "Books & Downloads". You can access new videos on the site as soon as they are available.

What if I don't like it?

If you decide that it is not for you, just reply to the purchase receipt email within 30 days and I'll issue you with a refund. If you could tell me why, that would be great too but it's not necessary.

I have other questions

If you still have questions just drop me an email.