Tabris.js CLI
A command line tool to create, build and serve Tabris.js apps.
Installation
npm install -g tabris-cli
Commands
tabris init
Creates a new Tabris.js app in the current directory.
See: Quick Start Guide - Tabris.js Documentation
tabris serve [options]
Starts a server the Tabris.js developer app can be pointed to. If a build script is present in package.json, it is executed beforehand. When serving a Tabris.js 3.x app the log output of the app will be displayed in the terminal.
options
-p [path], --project [path]
The directory to serve the Tabris.js app from. Needs to contain a package.json and installed “tabris” module. When omitted, the current working directory is served.
-m [module], --main [module]
Overrides the “main” field of package.json. The argument must be a valid module id relative to the project root, e.g. “dist/main.js”.
-a, --auto-reload
Auto reload the application when a source file is modified.
-i, --interactive
Enable interactive console for JavaScript input.
-l, --logging
Logs requests to the internal HTTP server of the CLI. Useful for debugging connection issues during app sideloading. This is in addition to the potential log output created by the app and the watch script. These are enabled regardless.
-w, --watch
Executes the watch instead of the build script given in the package.json of the app. The watch script can be a long-running task. A prewatch script will be executed before watch and before the server is started.
--no-intro
Does not print the available external URLs or QR code to the console, only the port. They can still be viewed by opening the given port in a browser.
--qrcode-renderer
Choose a renderer for the printed QR code.
utf8
(default): based on UTF-8 characters.terminal
: based on background color customization of the cursor color.
Use “terminal” if the QR code presentation breaks due to the font used in the terminal.
--external [url]
Uses the given string as the advertised public URL, to the exclusion of all other. Must include protocol and port. Should be used with --port
to ensure the actual port matches this one.
--port [port]
Changes the port the HTTP server listens to. Causes an error if the port is not available.
Keyboard Shortcuts
While serving a Tabris.js 3.x App there a various shortcuts available that to help with the development process.
CTRL + K
Prints an overview of available keys combinations. This message is also printed the first time an app connects to the CLI.
CTRL + C
Terminates the server and exits the CLI.
CTRL + R
Reloads the currently served app.
CTRL + U
Prints an XML summary of the current UI state using console.dirxml()
.
CTRL + T
Toggles the visibility of the developer toolbar. Tabris.js 3.4 and later only.
CTRL + X
Removes all content from the app’s localStorage
and (on iOS) secureStorage
.
CTRL + S
Saves a .json
file containing all current content of the app’s localStorage
and (on iOS) secureStorage
on the developer machine. You will be prompted for the file name/path of the target file. The path is relative to the current working directory and autocompletion via the tab key is supported.
CTRL + L
Loads a .json
file (as created by CTRL + S) and writes its content in to the app’s localStorage
/secureStorage
. All previous content will be removed. You will be prompted for the file name/path of the source file. The path is relative to the current working directory and autocompletion via the tab key is supported.
Note that you can not load storage data created on an Android device to an iOS device, or vice versa. This is because secureStorage
only exists on iOS.
tabris build [options] <platform> [cordova-platform-opts]
Builds a Tabris.js app for the given platform.
To speed up the build, pre-compiled build artifacts are kept in a build cache and are reused in subsequent builds. To clean up the build cache, e.g. after updating Cordova plug-ins, run tabris clean
.
See: Building a Tabris.js app - Tabris.js Documentation
See: Common tabris run
and tabris build
parameters
tabris run [options] <platform> [cordova-platform-opts]
Builds a Tabris.js app and runs it on a connected device or emulator.
See: Building a Tabris.js app - Tabris.js Documentation
See: Common tabris run
and tabris build
parameters
options
--target <id>
The ID of the target device to deploy the app to. See --list-targets
.
--list-targets
Show a list of available targets to use with --target <id>
.
tabris clean
Removes build artifacts.
Common tabris run
and tabris build
parameters
platform
ios
or android
.
options
Default options:
--debug
--cordova-build-config=./build.json
Note: when neither --emulator
nor --device
is specified and a device is connected, the app will be built for a device. If no device is connected, the app will be built for an emulator.
--variables <replacements>
Comma-separated list of variable replacements in config.xml. --variables FOO=bar,BAK=baz
will replace all occurrences of $FOO
and $BAK
in config.xml with respectively bar
and baz
.
Note: per default all environment variables are replaced in config.xml. To prevent that, use the --no-replace-env-vars
option.
--cordova-build-config <path>
Path to a build configuration file passed to Cordova. Relative to the cordova/
directory.
See Cordova platform documentation (iOS, Android) for more information about the file format.
You may want to include this file in .gitignore
since it may contain sensitive information.
--debug
Perform a debug build. Used for development.
--release
Perform a release build. Used when building apps for the marketplace of their platform.
--emulator
Build the app for an emulator.
--device
Build the app for a device.
--no-replace-env-vars
Do not replace environment variables in config.xml.
See --variables
documentation for more information about variable replacement in config.xml.
--verbose
Print more verbose output.
cordova-platform-opts
Platform-specific options passed to Cordova.