EuroPython 2025

How to build a cross-platform graphical user interface with Python
2025-07-18 , Terrace 2B

If you need to build a user interface for your Python code, many guides will tell you that your only options are to use the command line, or wrap your code in a web interface. However, there is another option - building a native GUI interface. In fact for some use cases, a GUI app may be your only option.

In this talk, you'll learn how to build and run a graphical user interface (GUI) that can run on your desktop, on your phone, or in a browser. You'll learn how you can use the BeeWare suite of tools to bootstrap a new GUI project, develop a GUI interface, and deploy that app to multiple desktop and mobile platforms, without making any code changes. You'll learn how to access device hardware like GPS and cameras; and you'll learn how to distribute your application - including all runtimes and third-party libraries - to others. Lastly, you'll get a brief introduction to how you can access native platform APIs that don't have a Python API.


Expected audience expertise:

Beginner

Dr Russell Keith-Magee is the founder of the BeeWare project, a project developing GUI tools and libraries to support the development of Python software on desktop and mobile platforms. He joined the Django core team in 2006, and was the President of the Django Software Foundation for 5 years. He joined the CPython core team in 2024. He is a frequent speaker at Python and Django conferences around the globe, sharing his experience as a FLOSS developer, community maintainer, and (unsuccessful) startup founder. In his day job, he is a Principal Engineer at Anaconda, working on BeeWare in the OSS team.

This speaker also appears in: