Crafting Beautiful User Interfaces with Python and GTK

Roshan R Chandar (~Roshan-R)




Mastering GTK for Python GUI Development

Are you interested in creating stunning graphical user interfaces (GUIs) for your Python applications? Look no further! This talk aims to introduce attendees to the world of GTK and how to harness its power to develop cross-platform desktop applications using Python. GTK is a widely-used, mature, and feature-rich GUI toolkit that provides a native look and feel on various operating systems.

Duration: 30 minutes (25 minutes for the talk, 5 minutes for Q&A)

1. Introduction to GTK (3 minutes)

  • Historical Context and Evolution: Understanding the origins and development of GTK over the years.
  • Key Features and Benefits: Exploring why GTK is a preferred choice for many developers.

2. Setting Up the Development Environment (5 minutes)

  • Installation and Configuration: Step-by-step guide to installing and configuring GTK for Python development on various platforms (Windows, macOS, and Linux).

3. Creating Your First GTK Application (5 minutes)

  • Hello World!: Writing your first GTK application in Python.
  • Core Components: An overview of the main components that constitute a GTK application.

4. The Widget Library (6 minutes)

  • Comprehensive Widget Overview: Introduction to the wide range of widgets available in GTK, including buttons, spinners, labels, and more.
  • libadwaita: Exploring libadwaita, the essential building blocks for crafting modern GNOME applications.

5. Handling Events and Signals (4 minutes)

  • Signal Management: Understanding the concept of signals in GTK and how to connect them to Python callbacks to handle user interactions effectively.

6. Developer Tooling for GTK (2 minutes)

  • GTK Widget Inspector: Learning to inspect and debug GTK applications using the GTK Widget Inspector.
  • Quick Prototyping with Workbench: Utilizing Workbench for rapid prototyping and iteration of your GTK interfaces.

7. Q&A Session (5 minutes)

By the end of this session, you'll have a solid foundation in GTK and be equipped with the skills to start building your own dynamic and cross-platform GUI applications with Python. Whether you're a beginner or an experienced developer, this talk will provide valuable insights and practical knowledge to elevate your GUI development capabilities.

Join us and take the first step towards mastering GTK for Python!


Basic programming knowledge in Python, a general understanding of GUI concepts, and experience with setting up a Python development environment.

Content URLs:

Currently working on the slides:

Speaker Info:

An enthusiastic Python developer with a passion for exploring the endless possibilities of Python magic! I am an avid FOSS enthusiast and have contributed to many open-source organizations, including the GNOME project, and maintain several popular applications. I have conducted various talks and sessions, with the latest being at PyCon Thailand. Currently, I work as a backend developer for Strollby, specializing in Python microservices and GraphQL.

Speaker Links:

Personal website: GitHub: LinkedIn: Gitlab:

Section: Python in Web and Applications
Type: Talk
Target Audience: Beginner
Last Updated: