# macaw_host v0.1.4 - Table of Contents > Host glue for deployable Phoenix apps: the literal config.exs on the data volume, generated secrets, release tasks, health, build info, and the -ctl generator. ## Pages - [macaw_host](readme.md) - [Changelog](changelog.md) ## Modules - [Macaw.Host.Build](Macaw.Host.Build.md): An app's build: its version and the commit it was built from, fixed at compile time. - [Macaw.Host.Config](Macaw.Host.Config.md): An app's configuration, from the literal `config.exs` on its data volume. - [Macaw.Host.Config.Literal](Macaw.Host.Config.Literal.md): The literal `config.exs` on a host's data volume: a map that is parsed, never evaluated. - [Macaw.Host.Config.Types](Macaw.Host.Config.Types.md): The setting types `Macaw.Host.Config` understands, and how a value of each is read from an environment variable (a string) or checked from `config.exs` (a literal). - [Macaw.Host.Ctl](Macaw.Host.Ctl.md): Generates an app's host control script, `-ctl`, so the apps of the family stop hand-maintaining thousands of lines of the same script. - [Macaw.Host.Ctl.Description](Macaw.Host.Ctl.Description.md): The app description `-ctl` is generated from: the `:ctl` key of the app's `mix.exs` project config, checked once here so the templates can trust every value. - [Macaw.Host.Ctl.Recorder](Macaw.Host.Ctl.Recorder.md): A recording stand-in for a generated script's `Ctl.World`, so an app's tests drive every `-ctl` command without docker on the box and assert each command's exact docker argv. - [Macaw.Host.Health](Macaw.Host.Health.md): An app's health, in one shape every `-ctl status` reads. - [Macaw.Host.Health.Plug](Macaw.Host.Health.Plug.md): Serves an app's health report as JSON: `200` when healthy, `503` when not. - [Macaw.Host.Release](Macaw.Host.Release.md): The release side of an app's `-ctl`: entry points the script runs as `bin/ eval` (in a throwaway container, so they work with the app stopped) or `bin/ rpc` (asking the running app). - [Macaw.Host.Secrets](Macaw.Host.Secrets.md): Secrets the system generates itself (`secret_key_base`, signing and sealing keys), kept in the data directory, readable by their owner only. ## Mix Tasks - [mix macaw.host.ctl](Mix.Tasks.Macaw.Host.Ctl.md): Generates the app's host control script from the `:ctl` description in its `mix.exs` (`Macaw.Host.Ctl.Description`) and its own commands (`Ctl.AppCommands`, in `ctl/app_commands.ex` by default).