moussaka-client
A javascript library that allows you to use javascript applications with the Moussaka prototyping framework.
Usage Example
var client = new MoussakaClient(opts);
var aNumber = client.registerVar('aNumber', 5);
var aString = client.registerVar('aString', 'string beans');
var aColor = client.registerVar('aColor', new Color(1, 0, 0, 1));
var validatedNumber = client.registerVar('validatedNumber', 5, {
type: 'float',
min: 0,
max: 100
});
client.connect();
while(running) {
console.log(aNumber.value);
console.log(aNumber.aString);
console.log(aNumber.aColor.toString());
console.log(aNumber.validatedNumber);
}
client.disconnect();
Options
To instantiate MoussakaClient you must pass in an object with the following keys.
Option | Desciption | Default |
---|
deviceName | The name of the device (i.e. John Smith's PC.) | None |
apiKey | The user API key retreived from the user account settings in Moussaka. | None |
projectId | The project ID retreived from the project view page in Moussaka. | None |
projectVersion | A string specifying the particular version of the project that this library is used in. | None |
serverUrl | The url to your Moussaka server. | http://localhost:3000/ |
pollInterval | The time in milliseconds between each poll to the server. | 1000 |
logLevel | See section below. | 2 (warning) |
Installing
It can be used directly in a node application or in the browser.
In Node:
- Install the package through npm
npm install moussaka-client
var MoussakaClient = require('moussaka-client');
var client = new MoussakaClient(opts);
In The Browser:
There are a few ways you can use it in the browser:
Get the package through bower:
bower install moussaka-client
The library bundle will be accessible at '/bower_components/moussaka-client/dist/moussaka-client[.min].js'.
Then choose your favourite way to load up the module:
var MoussakaClient = require('/path/to/moussaka-client.js');
- Consume it with RequireJS
<script src="require.js"></script>
<script src="/path/to/moussaka-client.js"></script>
require('moussaka-client.js', function (MoussakaClient) {
var client = new MoussakaClient(opts);
});
- Just use it as a global on the window object
<script src="/path/to/moussaka-client.js"></script>
var client = new MoussakaClient(opts);
- You could also just use the npm module in node and use Browserify to build your node application for the browser.
Log Level
By passing in a logLevel option you can control the detail of the log messages. The log levels are as follows:
- trace: 0
- info: 1
- warning: 2
- error: 3
- exception: 4
For example, to see only messages that are errors or exceptions, you would pass { logLevel: 3 } to the MoussakaClient constructor.