All Projects → aknuds1 → Chuckjs

aknuds1 / Chuckjs

Licence: gpl-2.0
JavaScript (CoffeeScript) parser for the ChucK language.

Programming Languages

javascript
184084 projects - #8 most used programming language

ChucKJS

Greenkeeper badge

JavaScript (CoffeeScript) parser for the ChucK music programming language, for execution within browsers supporting the Web Audio API (e.g. Chrome, Firefox).

Build Status

This project is merely in its infancy at this stage, so don't expect too much at this point. For example, error checking is non-existent. We're basically at the point of having implemented a minimal part of the language, just enough to be able to execute the official examples we have ported so far.

To see (or perhaps more importantly, hear) ChucKJS in practice, please visit our ChucK Demos site, which aggregates and lets you play back language demos.

Current Status as of 9.13.2014

Focus has shifted to an attempt to automatically port ChucK to JavaScript, using the Emscripten tool. See my ChucK fork if you'd like to follow its progress, or perhaps even contribute.

Build

In order to build ChucKJS, you'll need an installation of Node along with NPM. If you haven't already installed Grunt, install it system-wide:

npm install -g grunt-cli

Then, within the ChucKJS project root, install its dependencies (beneath the project root) via NPM:

npm install

After doing this, you should be able to build ChucKJS, by running grunt:

grunt

At this point, the parser has been built as lib/chuck/parser.js. CoffeeScript source files (in src/) are also compiled to JavaScript beneath lib/. Additionally, ChucKJS and its dependencies are built into the file examples/js/chuck.js, for the benefit of the examples within the examples/ directory. At this stage, you should be able to try the examples, e.g. examples/example1.html.

Test

There are self-contained example HTML files beneath the examples/ directory, which you are encouraged to try out. In addition to these, ChucKJS is automatically tested via Karma. Run these tests as follows:

karma start

Donating

Support this project and others by Arve Knudsen on Gittip.

Support via Gittip

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].