published Dan Yeaw; 8 November 2018

Dan wrote a blog post about how to build your own Toga GUI Widget.

5 Steps to Build Python Native GUI Widgets for BeeWare

Click here to read the full article

...Bees?

by Katie McLaughlin; published 25 October 2017

Cross-platform application development is a holy grail of software engineering. Write once, run everywhere - desktops, mobiles, and the web. There have been many attempts at this over the years, but the absolute pinnacle of this art form is to have no-one notice - you want your apps to look and feel like native apps so that your users can't tell. Bonus points is if your development happens in a language you already know and use. This is the goal of BeeWare: a suite of application tools and libraries that to develop native cross platform applications in Python. During this short presentation Katie will take you on a tour of the BeeWare stack, and describe how we've used the project as an incubator for new open source contributors around the world.

(The talk was unfortunately not recorded, but Katie has recorded a screencast for us!)

As seen at GitHub Constellation Sydney

Covered in Bees! Deploying an app to 6 platforms in 20 minutes

by Russell Keith-Magee; published 5 August 2017

Have you ever wanted to write a GUI application you can run on your laptop? What about an app that you can run on your phone? Historically, these have been difficult to achieve with Python, and impossible to achieve without learning a different API for each platform. But no more.

BeeWare is a collection of tools and libraries that allows you to build cross-platform native GUI applications in pure Python, targeting desktop, mobile and web platforms. In this talk, you'll be introduced to the BeeWare suite of tools and libraries, and see how you can use them to develop, from scratch, a simple GUI application that can be deployed as a standalone desktop application, a mobile phone application, and a single page webapp - without making any changes to the application's codebase.

As seen at PyCon AU 2017

How to write a Python transpiler

by Russell Keith-Magee; published 20 May 2017

We all know Python is a powerful and expressive programming language. What you may not know is how much of the internals of Python itself is exposed for you to use and manipulate.

In this talk, you'll be introduced to the tools and libraries Python provides to manipulate the compilation and execution of Python code. You will also see how you can use those tools to target execution environments other than the CPython virtual machine.

As seen at PyCon US 2017

Snek in the Browser

by Katie McLaughlin; published 19 May 2017

Python is a decades-strong language with a large community, and it has a solid foundation on the server, but it doesn't have a good user story in the browser... until now.

The BeeWare project aims to bring Python natively, everywhere. Using a combination of the Batavia and Toga projects, we can develop and entirely native web experience in Python, no JavaScript required.

During this talk, you will learn about how the BeeWare project has built Batavia, a Python virtual machine in JavaScript; and Toga, a multi-platform native API wrapper; a combination of which can be used to build an entire web platform in Python only.

As seen at PyCon US 2017

Cross-platform development with Python and BeeWare

published Katie McLaughlin; 28 April 2017

Katie wrote an article about BeeWare and her PyCon US 2017 talk for OpenSource.com.

Cross-platform development with Python and BeeWare

Click here to read the full article

Making a TV remote in Python

published Anthony Shaw; 4 February 2017

Anthony Shaw walks through the process of using Briefcase, Toga, and the Python iOS support tools to build a remote control app for his TV.

Click here to read the full article

Pybee is awesome

published Elias Dorneles; 28 October 2016

Elias Dorneles writs on why he thinks BeeWare is awesome and why you should help build it.

Click here to read the full article

Implementing mktime in Batavia or why CPython is a better choice for building a time machine

published Jacob Stoebel; 16 October 2016

The Python function mktime tells us how many seconds a datetime is from the epoch. It is based on the C function of the same name and while this makes it run fast, it also means it is platform dependent. The goal of Batavia is to bring Python to the web browser meaning platform dependencies need to be ironed out.

Click here to read the full article

Talk Python #79

by Michael Kennedy; published 9 October 2016

Could you write me a Python app for the wide range of platforms out there? Oh, wait, I want them to be native GUI applications. And I need them on mobile (Android, iOS, tvOS, and watchOS) as well as major desktop apps. I also need them to appear indistinguishable from native apps (be a .app on macOS, .exe on Windows, etc).

What technology would you use for this? This week I'll introduce you to a wide set of small, focused and powerful tools that make all of this, and more, possible. We're speaking with Russell Keith-Magee, founder of the Beeware project.

Click here to listen

Archive


Editor's picks

There's lots of great content here, but if you haven't got time to consume it all, here's our pick of the best of the best:


If you write an article, record a screencast, or publish something else that you think might be of interest to the BeeWare community, please get in touch.