Brython (Browser Python) is an implementation of Python 3 running in the browser, with an interface to the DOM elements and events.
Here is a simple example of an HTML page running Python:
To use Brython, all there is to do is:
- Load the script brython.js.
- Write Python code inside tags
Brython supports the syntax of Python 3, including comprehensions, generators, metaclasses, imports, etc. and many modules of the CPython distribution.
Since version 3.8.0, Brython implements the Python version of the same major / minor version number.
Zero install !
The most simple way to get started, without anything to install, is to use the distribution available online through jsDelivr. You can choose the latest stable release :
jsDelivr supports version ranges, so if you want the latest of the 3.12.x versions:
or the latest of the 3.x.y versions:
If you want to use the latest development version, you can load these scripts instead:
<script src="https://raw.githack.com/brython-dev/brython/master/www/src/brython.js" crossorigin="anonymous"> </script> <script src="https://raw.githack.com/brython-dev/brython/master/www/src/brython_stdlib.js" crossorigin="anonymous"> </script>
To install Brython locally, if you have a CPython distribution with
pip install brython
then create a new directory and run
or by loading the latest version of the Brython zip file from the releases page.
In both cases, the distribution includes brython.js (the core Brython engine) and brython_stdlib.js (a bundle of all the files in the standard distribution).
It also includes the page demo.html that shows a few examples of how you can interact with a web page using Python as the scripting language : create new elements, access and modify existing elements, create graphics, animations, send Ajax requests, etc.
Test Brython online
If you want to test Brython online you can visit the following:
Gallery of examples
You can start by reading the official Brython tutorial.
Curious about how Brython works ?
A tutorial explains how to build Android applications with Brython.
Community (questions, feedback, issues, new features, ...)
You can subscribe and post to the mailing list.
If you find a bug/issue or do you want to see a new feature in Brython, please, open a new issue.
If you want to contribute to Brython, please read the contributing guide.
- BrowserStack for providing an access to their online testing environment.