# Home Module

<WebSDK2 />

The Home module renders the SDK's built-in home / welcome screen — the optional intro screen that runs before a flow starts. Wired automatically by `<incode-flow>` when `enableHome: true`; rarely needed standalone.

> Effectively a [composite / utility module](doc:web-sdk-2-module-patterns#5-composite--orchestrator-modules) — the orchestrator drives it as part of the larger flow lifecycle. Ships no user inputs of its own.

## Availability

This module is headless-only — there is no public `<incode-home>` web component. Drive it with `createHomeManager` from `@incodetech/core/home`. Most consumers don't need to: pass `enableHome: true` in `FlowConfig` and `<incode-flow>` mounts the home screen for you.

## Configuration

The module takes no configuration:

```typescript
type HomeConfig = EmptyConfig; // no options
```

## State machine

`HomeState` is minimal:

| Status     | Description                                              |
| ---------- | -------------------------------------------------------- |
| `idle`     | Initial state.                                           |
| `main`     | Home screen visible. User can dismiss to start the flow. |
| `finished` | Terminal — user dismissed; flow continues.               |

## See also

* [IncodeFlow Component → enableHome](doc:web-sdk-2-incodeflow-component): the recommended way to use this module
* [Module Patterns → composite](doc:web-sdk-2-module-patterns#5-composite--orchestrator-modules)
* [Individual Modules](doc:web-sdk-2-individual-modules)
