Loads Python files and transpile to JavaScript using the awesome Transcrypt, Jiphy or Javascripthon compilers.
pip install transcrypt  # or jiphy, or javascripthon
npm install --save-dev py-loaderYou may specify jiphy instead of transcrypt if you prefer. In this case, ensure that options.compiler in webpack.config.js is set to jiphy (see below). The compiler option for Javascripthon is pj.
import Something from 'main.py';webpack.config.js
module.exports = {
  module: {
    rules: [
      {
        test: /\.py$/,
        loader: 'py-loader',
        options: {
          compiler: 'transcrypt'
        }
      }
    ]
  }
}py-loader can also be used to compile .vue Single File Components used by VueJS. This assumes that you already have vue-loader set up and working with javascript .vue files. Modify your vue-loader config file as shown:
  loaders: {
    'py': require.resolve('py-loader')
  },An example of a simple VueJS app written in (mostly) Python can be seen in the examples/vue-demo folder.
Caveats
- Only tested with Transcrypt
 - The import statement for loading sub-components still looks a bit weird
 - Web-pack entry point is still a javascript file
 
py-loader can be extended to use other Python compilers. Just fork this repo and extend the compilers object in index.js.
Please submit a pull request with your addition.
- DuncanMacWeb (https://github.com/DuncanMacWeb)
 - Sebastian Silva (https://github.com/icarito)
 - Ryan Liao (https://github.com/pirsquare)