# Tableau (/integrations/tableau)

`Tableau` already uses `MDEx` for Markdown by default. That makes Lumis a built-in integration point rather than a custom post-processing step.

The hook you want is Tableau's `config :tableau, :config, markdown: [mdex: ...]` configuration. Pass Lumis formatter options through MDEx's `syntax_highlight` setting.

## Add dependencies

```elixir
def deps do
  [
    {:tableau, "~> 0.30"},
    {:lumis, "~> 0.10"}
  ]
end
```

Tableau 0.30 requires `mdex ~> 0.11.1`. That MDEx version includes its parsers
and requires `:lumis`, so this integration needs no `lumis_wasm_*` packages or
`:mdex_native` configuration. It cannot resolve alongside `mdex ~> 0.14`.

Direct calls to [`Lumis.highlight/2`](/usage/elixir) use separate parser
packages. For an integration that supports MDEx 0.14, see
[MDEx parser packages](/migrate/mdex) for the dependency changes and
[NimblePublisher](/integrations/nimble-publisher) for a complete setup.

## Configure Tableau to use Lumis

```elixir
# config/config.exs
import Config

config :tableau, :config,
  url: "http://localhost:8080",
  markdown: [
    mdex: [
      extension: [
        table: true,
        header_ids: "",
        tasklist: true,
        strikethrough: true,
        autolink: true,
        alerts: true,
        footnotes: true
      ],
      render: [unsafe: true],
      syntax_highlight: [
        formatter: {:html_inline, theme: "catppuccin_latte"}
      ]
    ]
  ]
```

With that in place, fenced code blocks rendered by Tableau's Markdown pipeline will use Lumis.

## Multi-theme output

```elixir
config :tableau, :config,
  url: "http://localhost:8080",
  markdown: [
    mdex: [
      syntax_highlight: [
        formatter:
          {:html_multi_themes,
           themes: [
             light: "catppuccin_latte",
             dark: "catppuccin_frappe"
           ],
           default_theme: "light-dark()"}
      ]
    ]
  ]
```

This is the better default when your site already supports light and dark themes.

## Related docs

- [NimblePublisher](/integrations/nimble-publisher)
- [Elixir integration](/usage/elixir)
- [Themes](/themes)