Hello 👋 I'm Martin Fitzpatrick.

I write accessible projects, books, and tutorials that help people get more confident with Python.

mplstyler

A simple API to keep line and marker styles consistent throughout plots

Pathomx

Speed up your analysis with interactive data workflows built on Python.

Icoshift

A Python implementation of the icoshift spectral alignment algorithm.

accuri2fcs

Convert Accuri .c6 flow cytometry files to .fcs

gpml2svg

A command-line SVG renderer for GPML pathways
1 2 3 4 5 6 7 8 9 10 11

Python GUIs

Streamlit Widgets

An Overview of Commonly Used Widgets in Streamlit

Getting Started With Flet for GUI Development

Your First Steps With the Flet Library for Desktop and Web Python GUIs

Getting Started With NiceGUI for Web UI Development in Python

Your First Steps With the NiceGUI Library for Web UI Development

Getting Started With DearPyGui for GUI Development

Your First Steps With the DearPyGui Library for Desktop Python GUIs

Saving and Restoring Application Settings with QSettings in PyQt6

Learn how to use QSettings to remember user preferences, window sizes, and configuration options between sessions

6th Edition - Create GUI Applications with Python & Qt, Released

PyQt6 & PySide6 books updated for 2025 with model view controller architecture, new Python/Qt features and more examples

Tkinter Widgets

A walkthrough of Tkinter's basic widgets

Build an Image Noise Reduction Tool with Streamlit and OpenCV

Clean up noisy images using OpenCV denoising algorithms in Python

Kivy's Complex Widgets

Learn How to Use Kivy's Complex UX Widgets in Your Apps

Building a Currency Converter Application using Tkinter

Convert between currencies with real-time exchange rates

How to Show Only Icons in QTableView Cells (Hide Text)

Use custom model roles to display icons without text in your PyQt6 tables

How to Show Only Icons in QTableView Cells (Hide Text)

Use custom model roles to display icons without text in your PySide6 tables

See more at Python GUIs