# `ExDoc.Markdown`
[🔗](https://github.com/elixir-lang/ex_doc/blob/v0.40.3/lib/ex_doc/markdown.ex#L1)

Adapter behaviour and conveniences for converting Markdown to HTML.

ExDoc is compatible with any markdown processor that implements the
functions defined in this module. The markdown processor can be changed
via the `:markdown_processor` option. Note that doing such change is global.

ExDoc supports the following Markdown parsers out of the box:

  * [EarmarkParser](https://github.com/robertdober/earmark_parser)

ExDoc uses EarmarkParser by default.

# `available?`

```elixir
@callback available?() :: boolean()
```

Returns true if all dependencies necessary are available.

# `to_ast`

```elixir
@callback to_ast(String.t(), Keyword.t()) :: term()
```

Converts markdown into HTML.

# `to_ast`

Converts the given markdown document to HTML AST.

## Options

  * `:markdown_processor` - The markdown processor to use,
    either as a module or a `{module, keyword}` tuple

All other options are passed through to the markdown processor.

---

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