Guidesv13
You are reading the v13 guides. Titanium SDK v14 is current. See this page in v14.
CLI commands
Written for Titanium SDK 13.4.0 and later
The CLI is titanium, and ti is the same binary. Ten commands.
| Command | Does |
|---|---|
ti build |
Builds a project, and installs and runs it |
ti clean |
Removes previous build directories |
ti config |
Gets and sets CLI config options |
ti create |
Creates a project, module, or Apple Watch app |
ti info |
Reports the development environment |
ti module |
Lists installed modules |
ti project |
Gets and sets tiapp.xml settings |
ti sdk |
Manages installed SDKs |
ti serve |
Serves a project through the Titanium Vite runtime |
ti setup |
Configures the CLI |
Every command takes --help, and that output is generated from the CLI you
have installed, so it is always the authority over this page.
Global options
These work on any command.
| Option | Effect |
|---|---|
-d, --project-dir <path> |
The project to act on, instead of the working directory |
-s, --sdk [version] |
Build with a specific SDK rather than the newest |
--no-prompt |
Never ask. Required for scripting |
--no-banner |
Drop the version banner |
--no-color |
Drop ANSI colour |
--no-progress-bars |
Drop progress bars |
-q, --quiet |
Suppress output |
--config [json] |
Mix a JSON object into the config for this run |
--config-file [file] |
Use a different config file |
--debug |
CLI's own debug logging |
--no-prompt turns a missing required option from a question into an error,
which is what you want in CI and what makes a hung build impossible.
ti build
ti build --platform android
ti build --platform ios --target device
--platform takes android or ios. --target defaults to emulator on
Android and simulator on iOS.
| Platform | Targets |
|---|---|
| Android | emulator, device, dist-playstore |
| iOS | simulator, device, dist-appstore, dist-adhoc, macos, dist-macappstore |
Options worth knowing:
| Option | Effect |
|---|---|
-b, --build-only |
Compile, do not install or run |
-f, --force |
Full rebuild |
-C, --device-id <id> |
Which emulator, simulator or device |
-D, --deploy-type <type> |
development, test or production |
--liveview |
Reload the running app on save |
-l, --log-level <level> |
trace to error |
--skip-js-minify |
Skip minification |
--source-maps |
Inline source maps for transpiled JS |
Signing options are per platform: -K/--keystore, -P/--store-password,
-L/--alias on Android; -V/--developer-name, -R/--distribution-name,
-P/--pp-uuid on iOS. See
certificates and provisioning.
ti create
ti create --type app --name Hello --id com.example.hello --platforms android,ios --workspace-dir .
--type is app, module or applewatch. With --no-prompt, --type and
--workspace-dir have no usable default and must both be passed.
--alloy runs alloy new on the project afterwards, which needs Alloy
installed. --template takes a template name, a directory, a zip or a URL.
--platforms accepts android, ios and iphone. ios targets iPhone and
iPad; iphone targets iPhone only.
ti info
ti info
ti info -t android --json
-t/--types narrows to one area, and --json makes it machine-readable. This
is the first command to run when a build breaks for no visible reason.
ti sdk
ti sdk list
ti sdk install 13.4.1.GA
ti sdk uninstall 13.3.0.GA
install with no version takes the newest stable. -b/--branch installs from
a CI branch.
ti config
ti config # print everything
ti config android.sdkPath /path/to/sdk # set one
ti config paths.modules --append /path # add to a list
ti config paths.modules --remove /path # take one out
See CLI configuration for the keys.
ti project
Reads and writes tiapp.xml without a text editor, which is what to use in a
release script:
ti project version 1.2.0
ti project --output json
ti module
ti module list
list is the only subcommand. It reports project, configured-path and global
scopes, so it also answers which copy of a module a build will use.
ti clean
ti clean
ti clean --platforms android
Removes build/. Worth doing when a failure does not match the source.
ti setup
An interactive wizard. ti setup check is the useful non-interactive part, and
overlaps ti info.