# star_view v0.3.16 - Table of Contents

> Elixir SDK for Datastar SSE events with Plug and Phoenix helpers.

## GUIDES

- Introduction
  - [Overview](overview.md)
  - [Installation](installation.md)

- Phoenix
  - [Phoenix Web Module](web_module.md)
  - [StarView Layout](layout.md)
  - [Development Server](development_server.md)

- Core Concepts
  - [patch_signals/3](patch_signals.md)
  - [patch_element/3](patch_element.md)
  - [Per-Tab Stream Deduplication](stream_deduplication.md)
  - [CSRF](csrf.md)

- Comparison
  - [LiveView vs StarView](liveview_vs_star_view.md)

- Reference
  - [API Overview](api_overview.md)
  - [Migration from Dstar](migration_from_dstar.md)

- Release Notes
  - [Changelog](changelog.md)

## Modules

- Core
  - [StarView](StarView.md): Elixir SDK helpers for Datastar.
  - [StarView.Actions](StarView.Actions.md): Datastar action expression helpers.
  - [StarView.Elements](StarView.Elements.md): Datastar `datastar-patch-elements` helpers.

  - [StarView.JSON](StarView.JSON.md): Tiny wrapper around Erlang/OTP's native `:json` module.
  - [StarView.SSE](StarView.SSE.md): Plug-based Datastar Server-Sent Event generator.
  - [StarView.Scripts](StarView.Scripts.md): Script helpers implemented through Datastar element patches.

  - [StarView.Signals](StarView.Signals.md): Datastar signal reading and `datastar-patch-signals` helpers.

  - [StarView.StreamRegistry](StarView.StreamRegistry.md): Opt-in per-tab stream deduplication.

- Plugs
  - [StarView.Plug.Dispatch](StarView.Plug.Dispatch.md): Allowlisted Datastar event dispatch plug.
  - [StarView.Plug.RenameCsrfParam](StarView.Plug.RenameCsrfParam.md): Copies a Datastar CSRF signal into `_csrf_token` for `Plug.CSRFProtection`.

- Phoenix
  - [StarView.Controller](StarView.Controller.md): Phoenix controller helpers for StarView.
  - [StarView.Dispatch](StarView.Dispatch.md): Marker-based Datastar dispatch for Phoenix controllers.

- Exceptions
  - [StarView.Signals.ReadError](StarView.Signals.ReadError.md): Raised when Datastar signals cannot be decoded from the request body.

## Mix Tasks

- [mix dev](Mix.Tasks.Dev.md): Delegates to `mix star_view.server`.

- [mix star_view.install](Mix.Tasks.StarView.Install.md): Installs StarView into your project
- [mix star_view.server](Mix.Tasks.StarView.Server.md): Starts `mix phx.server` with browser opening enabled.
- [mix star_view.setup.datastar](Mix.Tasks.StarView.Setup.Datastar.md): Configures StarView dev URL and HTTPS
- [mix star_view.setup.search_controller](Mix.Tasks.StarView.Setup.SearchController.md): Generates an example StarView demo controller with Datastar
- [mix star_view.setup.streaming](Mix.Tasks.StarView.Setup.Streaming.md): Adds StarView stream registry to the supervision tree
- [mix star_view.setup.web_module](Mix.Tasks.StarView.Setup.WebModule.md): Adds a StarView section to the Phoenix web module
- [mix star_view.trust](Mix.Tasks.StarView.Trust.md): Adds the configured StarView development host to `/etc/hosts` and generates a
browser-trusted development certificate with `mkcert`.

