Create Application

There is a command-line tool named, available from both the SDK root and tool/bin directories, that helps you start a new application or library. It basically creates a folder structure with some essential files and values filled in. This basic setup already comprises a minimal working application which you can build and run, with no changes. But of course the intention is that you then go ahead and change the files' contents, particularly the JavaScript source files, add new classes, and evolve this skeleton into your desired application.

The same file structure is suitable to hold a library, i.e. a set of classes that you want to reuse in several applications. You can even have libraries that only hold images or other static resources, like CSS files.

You start it at the command prompt. The minimal set of options you have to provide is an application name (-n), and optionally an application type (-t). Other options let you select e.g. an output directory, a different application namespace, or a log file.

Here is a simple example:

$ -n foo -t native

Several tutorials in this manual make use of, e.g. the Hello World tutorial. There is also a dedicated page that describes the various application types.

For the most current information about the options please refer to the interactive help you get with --help. Here is a sample capture:

$ --help
                             [--namespace NAMESPACE] [--type TYPE]
                             [-logfile LOGFILE] [--skeleton-path PATH]

Script to create a new qooxdoo application.

Example: For creating a regular GUI application 'myapp' you could execute: --name myapp

  -h, --help            show this help message and exit
                        Name of the application. An application folder with
                        identical name will be created. (Required)
                        Output directory for the application folder. (Default:
  -s NAMESPACE, --namespace=NAMESPACE
                        Applications's top-level namespace. (Default:
  -t TYPE, --type=TYPE  Type of the application to create, one of: ['basic',
                        'bom', 'contribution', 'gui', 'inline', 'mobile',
                        'native'].'basic' -- for non-browser run times like
                        Rhino, node.js; 'bom' -- can be used to build low-
                        level qooxdoo applications; 'contribution' -- is
                        suitable for qooxdoo-contrib ; 'gui' -- is a standard
                        qooxdoo GUI application; 'inline' -- is an inline
                        qooxdoo GUI application; 'mobile' -- is a qooxdoo
                        mobile application with full OO support and mobile GUI
                        classes; 'native' -- is a qooxdoo application with
                        full OO support but no GUI classes. (Default: gui)
  -l LOGFILE, --logfile=LOGFILE
                        Log file
  -p PATH, --skeleton-path=PATH
                        (Advanced) Path where the script looks for skeletons.
                        The directory must contain sub directories named by
                        the application types. (Default:
  --cache=PATH          Path to the cache directory; will be entered into
                        config.json's CACHE macro (Default: