<commit_before>[![Build Status](https://secure.travis-ci.org/projectodd/nodej.png)](http://travis-ci.org/projectodd/nodej)

[![Build Status](https://buildhive.cloudbees.com/job/projectodd/job/nodej/badge/icon)](https://buildhive.cloudbees.com/job/projectodd/job/nodej/)

## Hey, What's NodeJ?

**NOTE: The name is changing to nodyn soon.**

NodeJ is a [node.js](http://nodejs.org) compatible framework, running on the
JVM and powered by the [DynJS](https://github.com/dynjs/dynjs) Javascript
runtime. "Why do that?", you may ask. Well, imagine running your node app on
the JVM where you immediately have access to all that the Java world has to
provide - directly from Javascript. With this approach, extending node doesn't
require C++ addons. You've got the entire Java ecosystem at your disposal
instead. And since DynJS is cross-language compatible, why not throw in a
little JRuby or Clojure with your app if you want. It's all available on the
JVM. Neat, right? We thought so, and thus we decided to try and make it happen.

## How Do I Run It?

Be prepared to get your hands dirty. NodeJ is still a work in progress and it's
evolving daily. But for now, if you want to run it, you need to be willing to
build it from source. And to do that, you'll need to build vert.x from source.
But for now, because you asked....

    $ git clone https://github.com/vert-x/vert.x.git
    $ cd vert.x
    $ ./gradlew collectDeps
    $ ./gradelew distTar

This will put the complete vert.x installation in
`build/vert.x-2.0.0-SNAPSHOT`. Just update your `$PATH` to include
`/path/to/repo/vert.x/build/vert.x-2.0.0-SNAPSHOT/bin`. 

Then, you'll need to build nodej.

    $ git clone https://github.com/projectodd/nodej.git
    $ cd nodej
    $ mvn install

By default, vert.x runs Javascript with Rhino. Change this to use lang-dynjs
and nodej by creating a `langs.properties` file at the root of your project
that looks like this.

    nodejs=org.projectodd~nodej~0.1.1-SNAPSHOT:org.projectodd.nodej.NodeJSVerticleFactory
    .js=nodejs

Now you should be able to run nodej through vert.x like so.

    $ vertx run someFile.js

## API Completion Status

See http://nodyn.io/compatibility
<commit_msg>More README updates - NodeJ -> Nodyn name change.<commit_after>[![Build Status](https://secure.travis-ci.org/projectodd/nodej.png)](http://travis-ci.org/projectodd/nodej)

[![Build Status](https://buildhive.cloudbees.com/job/projectodd/job/nodej/badge/icon)](https://buildhive.cloudbees.com/job/projectodd/job/nodej/)

## Hey, What's Nodyn?
### The Project Formerly Known as NodeJ

Nodyn is a [node.js](http://nodejs.org) compatible framework, running on the
JVM and powered by the [DynJS](https://github.com/dynjs/dynjs) Javascript
runtime. "Why do that?", you may ask. Well, imagine running your node app on
the JVM where you immediately have access to all that the Java world has to
provide - directly from Javascript. You've got the entire Java ecosystem at
your disposal. And since DynJS is cross-language compatible, why not throw in a
little JRuby or Clojure with your app if you want. It's all available on the
JVM. Neat, right? We thought so, and thus we decided to try and make it happen.

## How Do I Run It?

Be prepared to get your hands dirty. Nodyn is still a work in progress and it's
evolving daily. But for now, if you want to run it, you need to be willing to
build it from source. And to do that, you'll need to build vert.x from source.
But for now, because you asked....

    $ git clone https://github.com/vert-x/vert.x.git
    $ cd vert.x
    $ ./gradlew collectDeps
    $ ./gradelew distTar

This will put the complete vert.x installation in
`build/vert.x-2.0.0-SNAPSHOT`. Just update your `$PATH` to include
`/path/to/repo/vert.x/build/vert.x-2.0.0-SNAPSHOT/bin`. 

Then, you'll need to build Nodyn. Note that the repository name has not yet
changed from "nodej". It will soon become projectodd/nodyn.

    $ git clone https://github.com/projectodd/nodej.git
    $ cd nodej
    $ mvn install

By default, vert.x runs Javascript with Rhino. Change this to use lang-dynjs
and Nodyn by creating a `langs.properties` file at the root of your project
that looks like this.

    nodejs=org.projectodd~nodej~0.1.1-SNAPSHOT:org.projectodd.nodej.NodeJSVerticleFactory
    .js=nodejs

Now you should be able to run Nodyn through vert.x like so.

    $ vertx run someFile.js

## API Completion Status

See http://nodyn.io/compatibility

{'fraction_non_alphanumeric': 0.10108059432687978, 'fraction_numerical': 0.00405222872579919, 'mean_word_length': 3.6817702845100104, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 4, 'https://': 12, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5225930', 'n_tokens_mistral': 1468, 'n_tokens_neox': 1415, 'n_words': 556}