Build Client-Side Add-ons

Client add-ons need to define the client field according to the manifest documentation.

Example:

{
    "name": "helloworld",
    "version": "0.1.0",
    "title": "HelloWorld",
    "client": {
        "main": "client"
    }
}

Client-side part of IDE is built using:

Here is a standard main entry for our add-on:

define([], function() {
    // Require some core components
    var menu = codebox.require("core/commands/menu");
    var dialogs = codebox.require("utils/dialogs");

    menu.register("helloworld", {
        title: "Hello"
    }).menuSection({
        title: "Say Hello!",
        action: function() {
            dialogs.alert("Hello World", "Hey, this is a message from an add-on!");
        }
    });
});

All the component from the core are accesible using codebox.require.