# `Volt.DevServer`
[🔗](https://github.com/elixir-volt/volt/blob/v0.10.1/lib/volt/dev_server.ex#L1)

Plug that serves compiled frontend assets in development.

Serves individual ESM modules — each `.ts`, `.vue`, `.jsx` file gets
its own URL under the configured prefix. Import specifiers are rewritten
so the browser can resolve the full module graph:

  * Relative imports (`./utils`) → `/assets/utils.ts`
  * Bare imports (`vue`) → `/@vendor/vue.js` (pre-bundled)
  * Alias imports (`@/utils`) → `/assets/utils.ts`

Each module includes an `import.meta.hot` runtime for HMR support.

## Options

  * `:root` — source directory (required, e.g. `"assets/src"`)
  * `:prefix` — URL prefix to intercept (default: `"/assets"`)
  * `:target` — JS downlevel target (e.g. `:es2020`)
  * `:import_source` — JSX import source (e.g. `"vue"`)
  * `:vapor` — use Vue Vapor mode (default: `false`)

## Example

    plug Volt.DevServer,
      root: "assets/src",
      prefix: "/assets",
      target: :es2020

---

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