> Prerequisite: [Install and configure the Amplify CLI](/cli/start/install)

To start provisioning Geo resources in the backend, go to your project directory and execute the command:

```sh
amplify init
```

The above command will guide you through setting up your project name and preferred authentication profile.
Refer to ["Create your application"](/lib/project-setup/create-application) section for detailed project setup guide.

Now you are able to add a `geo` resource, such as map resources or a search index:

```sh
amplify add geo
```

The CLI will let you configure the Geo category based on the capabilities you want to add (maps and/or search).
You can either choose to stick with the defaults or configure advanced settings.
Please refer to [Amplify CLI Geo docs](/cli/geo/maps/) for more details on these configurations.

<BlockSwitcher>
<Block name="Maps">

```console
? Select which capability you want to add:
❯ Map (visualize the geospatial data)

? geo category resources require auth (Amazon Cognito). Do you want to add auth now? (Y/n)
❯ yes

? Do you want to use the default authentication and security configuration?
❯ Default configuration

? How do you want users to be able to sign in?
❯ Username

? Do you want to configure advanced settings?
❯ No, I am done.

? Provide a name for the Map:
❯ mapResourceName

? Who can access this Map?
❯ Authorized and Guest users

? Do you want to configure advanced settings? (y/N)
❯ no
```

</Block>
<Block name="Search">

```console
? Select which capability you want to add:
❯ Location search (search by places, addresses, coordinates)

? geo category resources require auth (Amazon Cognito). Do you want to add auth now? (Y/n)
❯ yes

? Do you want to use the default authentication and security configuration?
❯ Default configuration

? How do you want users to be able to sign in?
❯ Username

? Do you want to configure advanced settings?
❯ No, I am done.

? Provide a name for the location search index (place index):
❯ placeIndexResourceName

? Who can access this search index?
❯ Authorized and Guest users

? Do you want to configure advanced settings? (y/N)
❯ no
```

</Block>
</BlockSwitcher>

The `add` command automatically creates the backend configuration. Once all your configuration is complete, run the following (this might take a few minutes):

```sh
amplify push
```

A file named `amplifyconfiguration.json` that contains all geo-related configuration information will be created in your app's `src/main/res/raw` directory.
