# `VintageNetWizard.Web.Endpoint`
[🔗](https://github.com/nerves-networking/vintage_net_wizard/blob/v0.4.17/lib/vintage_net_wizard/web/endpoint.ex#L1)

Supervisor for the Web part of the VintageNet Wizard.

# `opt`

```elixir
@type opt() ::
  {:ssl, :ssl.tls_server_option()}
  | {:on_exit, {module(), atom(), list()}}
  | {:ifname, VintageNet.ifname()}
  | {:ap_ifname, VintageNet.ifname()}
  | {:ui, [ui_opt()]}
  | VintageNetWizard.Backend.opt()
```

# `ui_opt`

```elixir
@type ui_opt() ::
  {:title, String.t()}
  | {:title_color, String.t()}
  | {:button_color, String.t()}
```

UI specific configuration

* `:title` - the title of the HTML pages that will be displayed to the user.
* `:title_color` - color of the title for branding purposes
* `:button_color` - color of the buttons for branding purposes

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

# `start_server`

```elixir
@spec start_server([opt()]) ::
  :ok | {:error, :already_started | :no_keyfile | :no_certfile}
```

Start the web server

If the web server is started then `{:error, already_started}` is returned.

Only one server can be running at a time.

# `stop_server`

```elixir
@spec stop_server(VintageNetWizard.stop_reason()) :: :ok
```

Stop the web server

---

*Consult [api-reference.md](api-reference.md) for complete listing*
