Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/beeware/batavia
A JavaScript implementation of the Python virtual machine.
https://github.com/beeware/batavia
Last synced: about 2 months ago
JSON representation
A JavaScript implementation of the Python virtual machine.
- Host: GitHub
- URL: https://github.com/beeware/batavia
- Owner: beeware
- License: other
- Archived: true
- Created: 2015-08-09T01:40:34.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2020-05-31T05:55:55.000Z (over 4 years ago)
- Last Synced: 2024-05-19T07:24:38.455Z (6 months ago)
- Language: JavaScript
- Homepage: http://pybee.org/batavia
- Size: 22.2 MB
- Stars: 1,395
- Watchers: 87
- Forks: 426
- Open Issues: 52
-
Metadata Files:
- Readme: README.rst
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
Batavia is currently on hiatus
==============================**The BeeWare project isn't currently focussing on Batavia development.**
Python on the Web is still a goal that is important to the BeeWare project;
however, the approach that is being used by Batavia needs to be reconsidered.
In particular, the emergence of WASM as a viable target for web development
opens many options for Python on the web that weren't previously possible.As a result, we're not dedicating any BeeWare resources to Batavia development,
and we we're not encouraging other to contribute to VOC at this time.If you're interested in exploring future directions for Batavia, please `get in
touch `__... image:: http://beeware.org/project/projects/bridges/batavia/batavia.png
:width: 72px
:target: https://beeware.org/batavia=======
Batavia
=======
|py-version| |pypi-version| |pypi-status| |license| |build-status| |gitter|.. |py-version| image:: https://img.shields.io/pypi/pyversions/batavia.svg
:target: https://pypi.python.org/pypi/batavia
.. |pypi-version| image:: https://img.shields.io/pypi/v/batavia.svg
:target: https://pypi.python.org/pypi/batavia
.. |pypi-status| image:: https://img.shields.io/pypi/status/batavia.svg
:target: https://pypi.python.org/pypi/batavia
.. |license| image:: https://img.shields.io/pypi/l/batavia.svg
:target: https://github.com/beeware/batavia/blob/master/LICENSE
.. |build-status| image:: https://beekeeper.beeware.org/projects/beeware/batavia/shield
:target: https://beekeeper.beeware.org/projects/beeware/batavia
.. |gitter| image:: https://badges.gitter.im/beeware/general.svg
:target: https://gitter.im/beeware/general**Batavia is an early alpha project. If it breaks, you get to keep all the shiny pieces.**
Batavia is an implementation of the Python virtual machine, written in
JavaScript. With Batavia, you can run Python bytecode in your browser.It honors Python 3.5+ syntax and conventions, and allows you to
reference objects and classes defined natively in JavaScript.Quick Start
---------------Prerequisites
~~~~~~~~~~~~~~Batavia requires a Python 3.5, 3.6, or 3.7 installation, and a virtualenv to
run it all in.You also need to have a recent install of `Node.js `_
(from the 10.x LTR series), and a current version of npm. If
your version of npm is outdated, you can update it using the command::$ npm install npm@latest -g
Check the `Setting up your environment
`_ for configuration help.Downloading and Installing
~~~~~~~~~~~~~~~~~~~~~~~~~~1. Clone the code repositories
::$ mkdir beeware
$ cd beeware
$ git clone https://github.com/beeware/batavia2. Setup a virtualenv:
(for other environments, see `Getting Started `_).
Linux/Unix/Mac
--------------
Type the following commands in your terminal ::$ python3 --version
$ python3 -m venv venv
$ . venv/bin/activate
$ cd batavia
$ pip install -e .Windows
-------Type the following commands in your terminal ::
> py -3 -m venv venv
> venv\Scripts\activate
> cd batavia
> pip install -e .Windows (with only conda installed)
-----------------------------------Type in the following commands in your terminal ::
> pip install virtualenvwrapper-win
> mkvirtualenv venv
> workon venv
> cd batavia
> pip install -e .3. Install `Node.js `_.
You must have a recent version of Node; we do our testing using v10.x. Once
you've installed Node, you can use it to install the JavaScript dependencies
and compile the Batavia library::$ npm install
4. Compile the Batavia library and bundle its dependencies
Run the following command in the terminal ::
$ npm run build
For more detailed setup instructions, see the `Getting Started tutorial `_
Running Batavia in the browser
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~After you have setup the local installation of Batavia, you can now run Python in the browser: ::
$ cd testserver
$ pip install -r requirements.txt
$ python manage.py runserverthen open a web browser at `http://localhost:8000 `_
For more detailed instructions, see the `Python In The Browser
`_ guide.Running Batavia in the terminal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~If you want to run some Python code from a file in the terminal, you can also run Batavia on Node: ::
$ npm run python /path/to/python/file.py
This will should run the Python file and show output on the terminal.
For more details see `Running Python code using Batavia from the command line
`_.Documentation
-------------`Documentation for Batavia `_ can be found on `Read The Docs `_, including:
* `Getting Started `__
* `So, why is it called "Batavia"? `_
* `More Frequently Asked Questions `_.Contributing
------------If you'd like to contribute to Batavia development, our `guide for first time contributors `_ will help you get started.
If you experience problems with Batavia, `log them on GitHub `_.
Community
---------Batavia is part of the `BeeWare suite `_. You can talk to the community through:
* `@pybeeware on Twitter `_
* The `beeware/general `_ channel on Gitter.
We foster a welcoming and respectful community as described in our
`BeeWare Community Code of Conduct `_.