# Environment Setup

> Get a machine ready to build Titanium apps.

- Source: https://titaniumsdk.com/docs/setup
- This corpus documents Titanium SDK 13.4.1. Anything here that does not name a version describes 13.4.1.
- Titanium is maintained by TiDev. The Appcelerator toolchain is retired: there is no `appc` CLI, no Appcelerator Studio and no hosted build service. The supported CLI is `titanium` on npm, invoked as `ti`.

---

Titanium builds native apps, so it needs the native toolchains: Google's for
Android, Apple's for iOS. Setting up installs those, then the Titanium CLI and
SDK.

Budget an hour on a clean machine. Most of it is downloads.

## Start here

Follow the page for your operating system. Each one covers that machine end to
end: Node.js, a JDK, the Titanium CLI and SDK, and the native tooling.

- [Linux](https://titaniumsdk.com/docs/setup/linux.md) (Android only)
- [macOS](https://titaniumsdk.com/docs/setup/macos.md) (Android and iOS)
- [Windows](https://titaniumsdk.com/docs/setup/windows.md) (Android only)

## Why macOS is different

**iOS builds require macOS.** Apple ships Xcode only for macOS, and Xcode
compiles, signs and installs iOS apps. No cross-platform framework works around
this.

Android builds work on all three. If you are on Windows or Linux and need iOS
later, you need access to a Mac at that point.

## When you are done

`ti info` reports a working Android SDK, a working Xcode if you are on macOS,
and no errors. It is worth running again whenever a build starts failing for no
visible reason.

[IDE Integration](https://titaniumsdk.com/docs/setup/ide-integration.md) is optional and comes next if you
use Visual Studio Code. Otherwise go straight to
[your first app](https://titaniumsdk.com/docs/build/first-app.md).
