# Get Started

Equipped with a general understanding of Cast, the different types of Senders
and Receivers, and which platforms are supported (see
[Cast SDK Overview](https://developers.google.com/cast/docs/overview)), you're ready to begin developing apps
using the Cast SDK.

## Prepare for Cast development

1. Connect your Cast device and complete the setup instructions.

   1. For Google Cast-enabled devices:

      1. [Download the Google Home app from the Google Play Store](https://play.google.com/store/apps/details?id=com.google.android.apps.chromecast.app) to an
         Android Sender device

         or [download the Google Home app from the Apple App Store](https://apps.apple.com/tc/app/google-home/id680819774)
         to an iOS Sender device.
      2. Open the Google Home app on your Sender device and follow the
         setup prompts for your device, or consult the [Google Home app support page](https://support.google.com/googlenest/answer/7071794)
         which has links to setup instructions for all Google Cast-enabled
         devices.

   2. For other Cast-enabled devices, please refer to the manufacturer's setup
      instructions.

   > [!NOTE]
   > **Note:** You must set up your Cast-enabled device and link it to a user account before you attempt to register it on the Developer Console in the next step.

2. [Register](https://developers.google.com/cast/docs/registration#devices) your Cast-enabled device at the
   [Google Cast SDK Developer Console](https://cast.google.com/publish/#/overview)
   (**this is required in order to use the device for testing**).
   Do not attempt to register your device on the Developer Console without first completing the previous step.

3. Review the introductory materials on the specific platform and type of app
   you're implementing:

   1. For Chromecast devices, including Chromecast with Android TV and touch display devices, see [Android TV with Google Cast](https://developers.google.com/cast/docs/android_tv).
   2. For Google Cast for audio devices, see [Audio Devices](https://developers.google.com/cast/docs/audio).
4. Decide which type of Receiver you intend to use.

5. Get the API libraries for the Sender and Receiver apps you intend to develop:

   | App Type | Web | iOS | Android |
   |---|:---:|:---:|:---:|
   | Sender | [Web Sender](https://developers.google.com/cast/docs/web_sender#setup) | [iOS Sender](https://developers.google.com/cast/docs/ios_sender#xcode_setup) | [Android Sender](https://developers.google.com/cast/docs/android_sender#prerequisites) |
   | Receiver | [Web Receiver](https://developers.google.com/cast/docs/web_receiver/basic#google_web_receiver_sdk) | n/a | [Android TV Receiver](https://developers.google.com/cast/docs/android_tv_receiver/core_features#configuring_libraries) |
   [API library setup instructions]

   <br />

6. Try out the [Sample Apps](https://developers.google.com/cast/docs/sample_apps)
   and [Codelabs](https://developers.google.com/cast/codelabs). The sample apps feature working code that can
   be compiled and executed, while the codelabs provide a guided, hands-on coding
   experience with step-by-step instructions.

## Understand the development process

At this point, you're ready to get into the real work of developing a Cast app.

Below are the steps you need to follow:

1. [Register](https://developers.google.com/cast/docs/registration) your Web and Android TV Receiver apps through the [Google Cast SDK Developer Console](https://cast.google.com/publish/#/overview).
2. Review the [User Experience Guidelines](https://developers.google.com/cast/docs/ux_guidelines) to learn how to implement a UI that's consistent with other Cast apps.
3. Review the [Google Cast app development guides](https://developers.google.com/cast/docs/overview#apidocs_table).
4. Review the [API references](https://developers.google.com/cast/docs/reference).
5. Develop your Web and/or Android TV Receiver apps.
6. Regardless of the type of Web Receiver you plan to use, you will:
   1. Develop your Sender app(s).
   2. [Test](https://developers.google.com/cast/docs/testing) your Sender app(s).
   3. [Test](https://developers.google.com/cast/docs/testing) your Sender app(s) with your Receiver app(s).

## Install API libraries and configure your toolchain

> [!CAUTION]
> **Caution:** By accessing download links in the guides, you indicate that you have read and accepted the [Google APIs Terms of Service](https://developers.google.com/terms) and the [Google Cast SDK Additional Developer Terms of Service](https://developers.google.com/cast/docs/terms).

Follow the instructions for each API that your apps will use:

|   | Web | iOS | Android |
|---|:---:|:---:|:---:|
| Sender | |---| | [Setup for Developing with the Cast Application](https://developers.google.com/cast/docs/web_sender) | | [Web Sender API Reference](https://developers.google.com/cast/docs/reference/web_sender) | | |---| | [Setup for Developing With the Cast Application Framework (CAF) for iOS](https://developers.google.com/cast/docs/ios_sender) | | [iOS API Reference](https://developers.google.com/cast/docs/reference/ios) | | |---| | [Setup for Developing with the Cast Application Framework (CAF) for Android](https://developers.google.com/cast/docs/android_sender) | | [Android API Reference](https://developers.google.com/android/reference/com/google/android/gms/cast/package-summary) | |
| Receiver | |---| | [Web Receiver Overview](https://developers.google.com/cast/docs/web_receiver) | | [Web API Reference](https://developers.google.com/cast/docs/caf_receiver/basic) | | n/a | |---| | [Android TV Receiver Overview](https://developers.google.com/cast/docs/android_tv_receiver) | | [Android API Reference](https://developers.google.com/android/reference/com/google/android/gms/cast/tv/package-summary) | |
| n/a |

## Download Cast icons (optional)

The Cast icons are included in the Cast Button UI on each platform as well as in
the Android
[v7mediarouter](http://developer.android.com/tools/support-library/features.html#v7-mediarouter)
library.
If you're implementing a custom Cast button and you need to manually add the
Cast icons, they are available to [download](https://developers.google.com/static/cast/downloads/cast_icon_material.zip)
separately. This zip archive includes versions for Android, iOS, and Web.