> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mobile-starter.amisi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuration Overview

> Understanding the configuration layers in AMiSi Mobile Starter

AMiSi Mobile Starter uses a layered configuration approach to manage app settings, branding, and environment-specific values.

## Configuration Layers

The starter uses three main configuration layers:

### 1. App Configuration (`app.json`)

Located at `apps/mobile/app.json`, this is the primary Expo configuration file that defines:

* App name and slug
* Bundle identifiers (iOS/Android)
* Icons and splash screens
* Expo plugins
* Platform-specific settings
* EAS project ID

**When to edit:** When changing app identity, adding Expo plugins, or modifying platform-specific settings.

### 2. Product Configuration (`amisi.config.json`)

Located at the repository root, this file manages:

* App identity (name, scheme, bundle IDs)
* Branding assets (icon paths, splash screen)
* Adapter selection (auth, subscriptions)

**When to edit:** When customizing the app for a specific customer or changing service adapters.

### 3. Environment Variables (`.env`)

Environment variables control runtime behavior:

* API endpoints
* Service API keys (Firebase, RevenueCat)
* Feature flags
* Debug settings

**When to edit:** When setting up different environments (development, preview, production) or configuring third-party services.

## Quick Reference

| What to Configure     | Where                           | Guide                                                         |
| --------------------- | ------------------------------- | ------------------------------------------------------------- |
| App name, bundle IDs  | `amisi.config.json`             | [App Identity](/configuration/app-identity)                   |
| Icons, splash screens | `amisi.config.json` + assets    | [Branding](/configuration/branding)                           |
| Build profiles        | `apps/mobile/eas.json`          | [EAS Setup](/configuration/eas-setup)                         |
| Firebase services     | Firebase Console + config files | [Firebase Setup](/configuration/firebase-setup)               |
| API keys, secrets     | `.env` + EAS Secrets            | [Environment Variables](/configuration/environment-variables) |
| Service adapters      | `amisi.config.json` + flags     | [Adapters](/configuration/adapters)                           |

## Configuration Workflow

1. **Customize app identity** - Set your app name, bundle IDs, and scheme
2. **Update branding** - Replace icons and splash screens with your assets
3. **Set up EAS** - Initialize EAS and configure build profiles
4. **Configure services** - Set up Firebase, RevenueCat, or other services
5. **Set environment variables** - Configure API keys and environment-specific values
6. **Select adapters** - Choose which service adapters to use (mock vs production)

## Using the Configurator

The starter includes a web-based Configurator UI that provides a visual interface for managing configuration:

```bash theme={null}
bun run configurator:dev
```

The Configurator allows you to:

* Edit `app.json` and `amisi.config.json` visually
* Upload and manage branding assets
* Preview changes before applying them
* Generate environment variable templates

See individual configuration guides for detailed instructions.

## Next Steps

* [Configure App Identity](/configuration/app-identity)
* [Set Up Branding](/configuration/branding)
* [Initialize EAS](/configuration/eas-setup)
