| --- | |
| layout: documentation | |
| title: Tutorial - Introduction | |
| --- | |
| # Tutorial - Introduction | |
| You can use Bazel to build a variety of software outputs, including | |
| Linux and Mac OS X applications written in Java, C++ and Objective-C. You can | |
| also use Bazel to build software for other platforms or written in other | |
| languages. | |
| This tutorial shows how to use Bazel to build the following: | |
| * An Android app | |
| * An iOS app | |
| * A mobile backend server running on App Engine | |
| In this tutorial, you'll learn how to: | |
| * Set up a Bazel workspace and create a `WORKSPACE` file | |
| * Create `BUILD` files that contain the instructions used by Bazel to build | |
| the software | |
| * Run builds using the Bazel command line tool | |
| ## Requirements | |
| You can follow the steps in this tutorial on either a Linux or Mac OS X system. | |
| However, you can only build the iOS app if you are running Bazel on OS X. If | |
| you are using Linux, you can skip the iOS instructions and still complete | |
| the rest of the tutorial steps. | |
| ## Sample project | |
| You don't have to write your own mobile apps and backend server to use this | |
| tutorial. Instead, you'll use a sample project hosted on GitHub. The sample | |
| project is hosted at the following location: | |
| [https://github.com/bazelbuild/examples/](https://github.com/bazelbuild/examples/) | |
| You'll grab the sample project files in the next step in this tutorial. | |
| ## What's next | |
| Let's start off by [setting up](environment.md) the tutorial environment. |