Latest stable version: 1.1.3
Alloy is an MVC application framework by Appcelerator for Titanium.
Alloy will allow Titanium developers, old and new, to develop cross-platform mobile applications easier and more effectively than ever. The separation of concerns will increase the scalability of your apps. Titanium best practices are generated for you under the hood, making your apps of the highest quality across platforms. The markup, styles, themes, and mountain of other Alloy features will take your producitivity to a whole new level.
It's kind of a big deal.
- Quick Start Guide that covers everything from installation to building your first app with Alloy.
- Complete collection of Alloy Guides
- Collection of test apps showing various aspects of Alloy in practice.
- Join the Alloy Google group.
[sudo] npm install -g alloy
git clone https://github.com/appcelerator/alloy.git
cd alloy
[sudo] npm install -g .
...oh yeah, Studio will do it for you automatically. :)
This is primarily done by Alloy devs just for testing purposes, but you may find it useful.
- install jake:
[sudo] npm install -g jake
- If you are running nodejs 0.10.0, you MUST install jake 0.5.9 or higher.
- Get into the root directory of the cloned alloy repository.
- Find a test app in test/apps folder you want to run. For example, basics/simple or models/todo.
- Run jake:
jake app:run dir=basics/simple
- You might get exceptions about uninstalled modules. If you do, simply install them by name:
[sudo] npm install -g MODULE_NAME
- You might get exceptions about uninstalled modules. If you do, simply install them by name:
- Lather, rinse, repeat
You can use these apps through Titanium Studio too. The easiest way to do that would be to import the test/project/Harness into Titanium Studio. After that, everytime you run jake
, your project in Studio will be updated. Once in Studio, you can run for any platform, Titanium SDK version, or change any settings you want. This will give you a lot more options and power than running solely from the command line.
- Options for the
jake
command- tiversion - Set the Titanium SDK version to be used. Defaults to the latest installed SDK.
- platform - The target mobile platform. Defaults to
iphone
. Must beandroid
oriphone
,mobileweb
andipad
are not supported. - Examples
jake app:run dir=basics/simple platform=iphone
jake app:run dir=basics/simple platform=android tiversion=3.0.0.GA
jake app:run dir=basics/simple tiversion=2.1.4
- If you get permissions errors on OSX or Linux, try using
sudo
with thejake
command
More so than any other Appcelerator project to this point, we are working collaboratively with the community to develop a framework that works for you. Here's the best ways to discuss Alloy or ask questions.
- Got an Alloy development question? Go to the Appcelerator Q&A, and make sure to use the alloy tag.
- Want to discuss the past, present, and future of Alloy? Join the Alloy Google group.
- Got a confirmed bug? Log it at the Titanium Community Issue Tracker. Make sure to give it the alloy label.
Other than that, all the usual rules for submitting feedback apply. The more code, details, and test cases you provide, the easier it will be to act on that feedback.
Alloy is an open source project. Alloy wouldn't be where it is now without contributions by the community. Please consider forking Alloy to improve, enhance or fix issues. If you feel like the community will benefit from your fork, please open a pull request.
To protect the interests of the Alloy contributors, Appcelerator, customers and end users we require contributors to sign a Contributors License Agreement (CLA) before we pull the changes into the main repository. Our CLA is simple and straightforward - it requires that the contributions you make to any Appcelerator open source project are properly licensed and that you have the legal authority to make those changes. This helps us significantly reduce future legal risk for everyone involved. It is easy, helps everyone, takes only a few minutes, and only needs to be completed once.
You can digitally sign the CLA online. Please indicate your email address in your first pull request so that we can make sure that will locate your CLA. Once you've submitted it, you no longer need to send one for subsequent submissions.
Many credits should be noted in the development of Alloy.
- The Titanium community. It's been a number of years and probably well over 50+ application frameworks that have been built around Titanium and we finally felt that it made sense for Appcelerator to work to build and support an official framework. Thanks to everyone for their innovations, input and feedback.
- Jeff Haynie and Nolan Wright. For their initial inspiration for Titanium and continued pushing to make it better. Codestrong.
- Kevin Whinnery. For his passionate and persistent pushing to come up with a "standard way" and his many initial ideas.
- Russ McMahon. For his initial R&D work with Nolan to come up with the early versions and ideation.
- Tony Lukasavage. For helping provide the JS ninja coding skills and for being the Alloy lead.
- Gabriel Tavridis. For helping provide the "herding of the engineering LOLcats" as the product manager for Alloy.
Alloy is developed by Appcelerator and the community and is Copyright (c) 2012 by Appcelerator, Inc. All Rights Reserved. Alloy is made available under the Apache Public License, version 2. See the LICENSE file for more information.