What are the current Python graphical user interface libraries? Should you build everything in the terminal and create a text-based user interface instead? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.
We cover a Real Python article that explores the Textual library. Textual is a Python toolkit and framework for creating attractive and functional text-based user interface (TUI) applications that run in the user’s terminal. The tutorial covers organizing layouts of widgets, styling components, and handling events and user actions within an application.
We continue our exploration of user interface options for your projects by discussing a recent article about Python GUI libraries. The piece compares the frameworks, showing a quick preview of how they look and sample code for a simple application. We share our thoughts and experiences with several of the libraries as we go through the collection.
We also share several other articles and projects from the Python community, including a news roundup, handling binary data in Python, exploring the rules terminal programs follow, using Microsoft Edge’s online text-to-speech service from Python, and a project for reading and writing compressed JSON.
Course Spotlight: Building a Code Image Generator With Python
In this step-by-step video course, you’ll build a code image generator that creates nice-looking images of your code snippets to share on social media. Your code image generator will be powered by the Flask web framework and include exciting packages like Pygments and Playwright.
Topics:
00:00:00 – Introduction
00:02:16 – PyCon US: Travel Grants & Refund Policy
00:02:57 – PyCon US 2025 travel guidance?
00:03:32 – Faster Branch Coverage Measurement
00:04:11 – Python Release Python 3.14.0a6
00:04:21 – Django 5.2 Release Candidate 1 Released
00:04:30 – PyOhio July 26-27, Call for Papers
00:04:59 – PEP 779: Criteria for Supported Status for Free-Threaded Python
00:05:45 – Python Textual: Build Beautiful UIs in the Terminal
00:11:32 – Bytes Objects: Handling Binary Data in Python
00:16:41 – Video Course Spotlight
00:18:01 – Which Python GUI Library Should You Use in 2025?
00:32:08 – Real Python Workshops
00:34:23 – “Rules” That Terminal Programs Follow
00:40:29 – edge-tts: Use Microsoft Edge’s online text-to-speech service from Python
00:44:07 – compress_json: Read and Write Compressed JSON
00:45:34 – Thanks and goodbye
News:
PyCon US: Travel Grants & Refund Policy – PyCon US offers travel grants to visitors. This post explains how they’re decided. Also, with changing border requirements in the US, you may also be interested in the
Refund Policy for International Attendees.
PyCon US 2025 travel guidance? - PSF / Ask the staff! - Discussions on Python.org
Faster Branch Coverage Measurement – After nearly two years, Ned thinks this is finally ready: coverage.py can use sys.monitoring to more efficiently measure branch coverage.
Python Release Python 3.14.0a6
Django 5.2 Release Candidate 1 Released
PyOhio July 26-27, Call for Papers
PEP 779: Criteria for Supported Status for Free-Threaded Python – PEP 703 (Making the Global Interpreter Lock Optional in CPython), described three phases of development. This PEP outlines the criteria to move between phases.
Show Links:
Python Textual: Build Beautiful UIs in the Terminal – Textual is a Python library for building text-based user interfaces (TUIs) that support rich text, advanced layouts, and event-driven interactivity in the terminal. This tutorial showcases some of the ways you can design an appealing and engaging UI using Textual.
Bytes Objects: Handling Binary Data in Python – In this tutorial, you’ll learn about Python’s bytes objects, which help you process low-level binary data. You’ll explore how to create and manipulate byte sequences in Python and how to convert between bytes and strings. Additionally, you’ll practice this knowledge by coding a few fun examples.
Which Python GUI Library Should You Use in 2025? – This post compares the Python GUI libraries available in 2025, including PyQT, PySide, TKinter, and Kivy.
“Rules” That Terminal Programs Follow – The conventions that most terminal programs follow mean that you can more easily know how to control them. Julia’s post talks about “rules” that terminal programs tend to follow, and so should yours.
Projects:
edge-tts: Use Microsoft Edge’s online text-to-speech service from Python WITHOUT needing Microsoft Edge or Windows or an API key
compress_json: Read and Write Compressed JSON
Additional Links:
Intermediate Python Deep Dive Course – Real Python
Episode #80: Make Your Python App Interactive With a Text User Interface (TUI)
Build a Contact Book App With Python, Textual, and SQLite
Binary, Bytes, and Bitwise Operators in Python – Video Course
Nibble (magazine) - Wikipedia
Python GUI Programming – Real Python
Python GUI Programming With Tkinter – Tutorial
Python and PyQt: Building a GUI Desktop Calculator – Tutorial
Build Cross-Platform GUI Apps With Kivy – Tutorial
How to Build a Python GUI Application With wxPython – Tutorial
Episode #182: Building a Python JSON Parser & Discussing Ideas for PEPs
Speech Synthesis Markup Language (SSML) overview - Speech service - Azure AI services | Microsoft Learn
Level up your Python skills with our expert-led courses:
Building a Python GUI Application With Tkinter
Build a GUI Calculator With PyQt and Python
Building a Code Image Generator With Python
Support the podcast & join our community of Pythonistas