Overview

This guide provides basic instructions on installing the Alloy command-line interface (CLI) and creating a quick project.

Command-Line Interface Installation

The Alloy command-line interface and plugin should be automatically installed by the studio updater. Refer to the Titanium Studio Quick Start Guide for instructions.

If there were installation problems or if you wish to install the Alloy CLI independent of the Titanium Studio installation, refer to the manual installation instructions below.

Manual Installation

Titanium SDK 3.0.x or later needs to be installed and configured before installing the Alloy CLI.

  1. Download and install Node.js from http://nodejs.org/#download, which includes the npm package manager needed to install Alloy.
  2. From a console window, run the following command to install Alloy:
sudo npm install -g alloy

By default, these installation directions will install the latest Alloy release. To install a specific released version, use the same directions, except after 'alloy', add the at symbol ('@') with the version number. For instance, executing sudo npm install -g alloy@1.0.0 will install version 1.0.0.

Create a Project

Using Titanium Studio

To create a new Alloy project, start Titanium Studio, then

  1. From the menu, select File > New > Titanium Project. The New Titanium Project wizard appears.
  2. Select Alloy in the Available Templates box, choose a template, then click the Next button.
  3. Complete all of the fields, then click the Finish button.

A new skeleton Alloy project will be generated. Note that the Resources folder is hidden from the App and Project Explorer.

Using the CLI

To create a new Alloy project, run the following commands:

titanium create --name=appname --id=com.domain.appname --platforms=android,ipad,iphone,mobileweb
cd appname
alloy new

A new skeleton Alloy project will be generated in the appname directory.

Simple Example

The following example converts the image_view_file.js file from the Titanium KitchenSink sample application to an Alloy project.

To see the example in the KitchenSink application, click on the Base UI tab, then navigate to Views > Images Views > Image File.

View

The view file declares the structure of the GUI. For example, the file below defines a window with an image and label.

Replace the contents of app/views/index.xml with the following:

<Alloy>
	<Window>
		<ImageView id="imageView" onClick="clickImage"/>
		<Label id="l">Click Image of Apple Logo</Label>
	</Window>
</Alloy>

Style

The style file formats and styles the components in the view file. For example, the style below defines the background color of the window; position, dimensions and color of the label; and position, dimensions and location of the image.

Replace the contents of app/styles/index.tss with the following:

"Window": {
	backgroundColor:"white"
},
"#l":{
	bottom:20,
	width: Ti.UI.SIZE,
	height: Ti.UI.SIZE,
	color:'#999'
},
"#imageView":{
	image:"/images/apple_logo.jpg",
	width:24,
	height:24,
	top:100
}

Controller

The controller file contains the presentation logic, which responds to input from the user. For example, the controller code below creates an alert dialog when the user clicks on the image and opens the window when the application starts.

Replace the contents of app/controllers/index.js with the following:

function clickImage(e) {
	Titanium.UI.createAlertDialog({title:'Image View', message:'You clicked me!'}).show();
}

$.index.open();

Asset

Create a folder called app/assets/images and copy the apple_logo.jpg file from the KitchenSink project. This file will be copied to Resources/images/apple_logo.jpg by Alloy during the build process.

Compile and Run

Using Titanium Studio

For the Mobile Web platform, compile the application using the CLI, then run it with Titanium Studio. Run the following command from a console to compile the application:

alloy compile --config platform=mobileweb

In the App Explorer view, click the Run button and select the device to launch the application. Alloy will generate the Titanium files from the Alloy project files, which will then be compiled by Titanium Studio and launched on the device simulator.

Using the CLI

For the Mobile Web platform, run the application from Titanium Studio after compiling it.

From a console window, go to the root directory of the project, then

titanium build [-p platform]

Refer to the Titanium Command-Line Interface Reference for more information about using the titanium build command.

More Examples

For more simple usage examples of Alloy, go to the alloy/test/app directory on the Alloy GitHub project.

To use the sample applications from the GitHub project, first clone the project:

git clone https://github.com/appcelerator/alloy

Using Titanium Studio:

  1. Create a new Alloy project.
  2. Select File > Import.
  3. Select General > File System and click the Next button. The Import dialog appears.
  4. Click the first Browse button (From directory), then navigate to a test application in the cloned Alloy project and click the Open button.  For example, if you want to import the Master-Detail application, select alloy/test/apps/advanced/master_detail/.
  5. Select all folder and files, that is, make sure they are all checkmarked.
  6. Click the second Browse button (Into folder), then navigate to your project's app directory and click the OK button.
  7. Click the Finish button.  The sample application is imported in your project and you can run it.

Using the Titanium CLI, run the following commands:

ti create --name ProjectName
cd ProjectName
alloy new
cp -r <path_to_alloy_git_repo>/test/apps/<path_to_app>/* .
ti build

Next Steps

Review Alloy Concepts to learn more about Alloy and how to structure your project.  From there, visit the links on Alloy ViewsAlloy Controllers, and Alloy Models to learn how to write views, controllers and models, respectively.