Transcrypt compiles Python source code into JavaScript for browser applications. It converts a substantial subset of Python into JavaScript 6, with optional minification, and lets Python code call JavaScript functions and use browser DOM features and JavaScript libraries. Its examples include jQuery, React, Fabric.js, D3.js, Plotly.js, and Riot. The distribution also offers optional static type validation and consistency checks, plus multilevel source maps for debugging generated JavaScript from its Python source. Transcrypt can compile Python server code for Node.js and use Node libraries through require(). It is installed as a Python package with pip and is free under the Apache 2.0 license. The project is aimed at browser development and JavaScript libraries rather than desktop Python libraries. Because it precompiles code, Python exec and eval are unsupported, though JavaScript eval is supported. C and C++ libraries are not directly supported for browser use without special measures such as compiling them to asm.js.
Who it is for
Transcrypt suits Python developers building browser applications who want to work with JavaScript libraries and browser APIs. It can also target Node.js server code.
What is good
- Free under the Apache 2.0 license
- Can call JavaScript functions from Python code
- Includes source maps for debugging generated JavaScript
- Can compile Python server code for Node.js
What to know first
- Python exec and eval are unsupported
- C and C++ libraries need special measures for browser use
- Focuses on browser development, not desktop Python libraries
Verdict
Transcrypt offers a way to write browser applications in Python while using JavaScript libraries and tools. Its precompilation and library limits matter for projects that depend on Python exec, eval, or C and C++ libraries.
Transcrypt plans and pricing
All plansCompared on code transpilers
- Free plan
- Yes
- Syntax-version conversion
- No
- Intermediate output
- No
- CLI access
- Yes
- Conversion mode
- source-to-source


