AppengineJS is an open source JavaScript port of the Google App Engine Python SDK helpful to create web applications that can be deployed on GAE infrastructure accessing Google’s persistent storage and services.

While AppengineJS is a JavaScript port of the App Engine Python API, it actually runs on Rhino, the Mozilla JavaScript engine which is written in Java. So, JavaScript code using AppengineJS is actually deployed on JVM. The authors have chosen this solution because they think “the design of the Python API is closer to the JavaScript world.”

The Python to JavaScript porting has been done using the JS naming conventions, namely the Python this_is_a_name identifier became thisIsAName , and all delete() functions have been renamed to remove() to avoid collision with the delete keyword.

The following APIs have been ported so far:

The GitHub project contains the source code, a link to documentation, and links to two demo examples using AppengineJS: a JSGI application using the Datastore API (tar.gz), and a blog powered by AppengineJS and Nitro (tar.gz).