# `Incant.Admin`
[🔗](https://github.com/elixir-vibe/incant/blob/v0.1.1/lib/incant/admin.ex#L1)

Defines the root Incant admin surface for an application.

Admin modules wire resources, dashboards, plugins, and global options together.

    defmodule MyApp.Admin do
      use Incant.Admin,
        repo: MyApp.Repo,
        theme: MyApp.Admin.Themes.Default,
        policy: MyApp.Admin.Policy,
        actor_assign: :current_scope

      resource MyApp.Admin.Resources.Product
      dashboard MyApp.Admin.Dashboards.Operations
    end

# `dashboard`
*macro* 

# `dashboards`

Returns resolved dashboard surfaces.

# `dataset`
*macro* 

# `datasets`

Returns resolved dataset surfaces.

# `describe`

```elixir
@spec describe(module() | Incant.Admin.Metadata.t()) :: Incant.Admin.Contract.t()
```

Returns a transport-safe contract for an admin module or metadata struct.

# `expose`
*macro* 

# `plugin`
*macro* 

# `resource`
*macro* 

# `resources`

Returns resolved resource surfaces.

# `surfaces`

Returns all resolved admin surfaces in declaration order.

---

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