Use React and JSX in Python Applications
This blog site has been archived. Go to react.dev/blog to see the recent posts.
Transform your JSX files via the provided
from react import jsx # For multiple paths, use the JSXTransformer class. transformer = jsx.JSXTransformer() for jsx_path, js_path in my_paths: transformer.transform(jsx_path, js_path) # For a single file, you can use a shortcut method. jsx.transform('path/to/input/file.jsx', 'path/to/output/file.js')
For full paths to React files, use the
from react import source # path_for raises IOError if the file doesn't exist. react_js = source.path_for('react.min.js')
PyReact includes a JSX compiler for django-pipeline. Add it to your project’s pipeline settings like this:
PIPELINE_COMPILERS = ( 'react.utils.pipeline.JSXCompiler', )
PyReact is hosted on PyPI, and can be installed with
$ pip install PyReact
Alternatively, add it into your
Dependencies: PyReact uses PyExecJS to execute the bundled React code, which requires that a JS runtime environment is installed on your machine. We don’t explicitly set a dependency on a runtime environment; Mac OS X comes bundled with one. If you’re on a different platform, we recommend PyV8.
For the initial release, we’ve only tested on Python 2.7. Look out for support for Python 3 in the future, and if you see anything that can be improved, we welcome your contributions!