JSPM

  • Created
  • Published
  • Downloads 50
  • Score
    100M100P100Q7444F
  • License MIT

A javascript to pico-8 lua converter

Package Exports

  • jspicl

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (jspicl) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

jspicl

jspicl is a Javascript to PICO-8 Lua transpiler. The Javascript code is processed by Esprima which will create an AST that is used to generate Lua code as faithful to the original as possible.

Installation

npm install jspicl

Usage

import jspicl from "jspicl";

const javascriptCode = `...`;
const { output, polyfills } = jspicl(javascriptCode);
console.log(
  "--- Polyfills ---\n",
  polyfills,
  "--- Transpiled code ---\n",
  output
);

rollup-plugin-jspicl - Rollup plugin wrapper for jspicl

jspicl-mario-sample - Mario sample game using jspicl

Known limitations

ES2015+ Not all ES2015+ features are supported. Run your code through a transpiler first such as bublé or babel.
prototype chains Not supported
Array methods Not all prototype methods have been polyfilled yet.
Math.max Only supports two arguments.
AST Not all declarations, expressions and statements have been implemented. More will be added as needed.

Versioning

This project uses semantic versioning

License

MIT