# Cena Bootstrap

## O que existe

- **Bootstrap.unity**: cena real de inicialização em `Assets/Presentation/Scenes/`.
- **GameObject "Bootstrap"**: contém o componente **AppBootstrap**, já configurado.
- **AppConfig.asset**: asset de configuração em `Assets/Core/`, já referenciado no AppBootstrap (_useMockServices_ = true, _mainSceneName_ = "Main").

Ao abrir o projeto no Unity, a cena Bootstrap já vem com o fluxo de inicialização pronto.

## Fluxo de bootstrap

1. Unity carrega a cena **Bootstrap** (primeira cena em File > Build Settings).
2. O **AppBootstrap** executa em `Awake`: lê o **AppConfig**, registra os serviços mock no **ServiceRegistry** e registra o **SceneRouter**.
3. Em seguida, carrega automaticamente a cena **Main** (nome definido em AppConfig.MainSceneName).
4. Na cena Main, o **MainSceneController** monta a UI e exibe categorias, espaços e fornecedores a partir dos serviços mock.

## Build Settings

- File > Build Settings.
- Adicionar **Bootstrap** em "Scenes In Build" (índice 0).
- Adicionar **Main** em "Scenes In Build" (índice 1), para o bootstrap carregar a cena principal.

## Se o AppConfig aparecer quebrado no Inspector

Se o Unity não resolver a referência ao **AppConfig** (campo vazio no AppBootstrap):

1. Em `Assets/Core/` deve existir o asset **AppConfig** (arquivo AppConfig.asset).
2. Se não existir: clique direito em `Assets/Core` > Create > **EventsAppQuest > App Config**.
3. Selecione o GameObject **Bootstrap** na cena e, no Inspector, arraste o asset **AppConfig** para o campo **App Config** do componente AppBootstrap.
