# showdoc


<!-- WARNING: THIS FILE WAS AUTOGENERATED! DO NOT EDIT! -->

## Documentation For An Object

Render the signature as well as the `docments` to show complete
documentation for an object.

------------------------------------------------------------------------

<a
href="https://github.com/AnswerDotAI/nbdev/blob/main/nbdev/showdoc.py#L24"
target="_blank" style="float:right; font-size:smaller">source</a>

### BasicMarkdownRenderer

``` python

def BasicMarkdownRenderer(
    sym, name:str | None=None, title_level:int=3, maxline:int=110
):

```

*Markdown renderer for
[`show_doc`](https://nbdev.fast.ai/api/showdoc.html#show_doc)*

------------------------------------------------------------------------

<a
href="https://github.com/AnswerDotAI/nbdev/blob/main/nbdev/showdoc.py#L35"
target="_blank" style="float:right; font-size:smaller">source</a>

### show_doc

``` python

def show_doc(
    sym, # Symbol to document
    renderer:NoneType=None, # Optional renderer (defaults to markdown)
    name:str | None=None, # Optionally override displayed name of `sym`
    title_level:int=3, # Heading level to use for symbol name
):

```

*Show signature and docstring for `sym`*

You can use
[`show_doc`](https://nbdev.fast.ai/api/showdoc.html#show_doc) to
document apis of functions, classes or methods.

### Numpy Docstrings

if you have [numpy
docstrings](https://numpydoc.readthedocs.io/en/latest/format.html)
instead of `docments`,
[`show_doc`](https://nbdev.fast.ai/api/showdoc.html#show_doc) will
attempt to parse and render those just like `docments`.

<div>

> **Warning**
>
> Numpy docstring formatting is very strict. If your docstrings do not
> strictly adhere to the numpy format, it will not be parsed properly
> and information about parameters and return values may not properly be
> rendered in the table below the signature. Where possible, we
> recommend using `docments` to annonate your function instead.

</div>

## show_doc on Classes

[`show_doc`](https://nbdev.fast.ai/api/showdoc.html#show_doc) works on
Classes, too, including when you use `@patch`.

You can define methods for the class `Foo` with `@patch` which is
convenient in allowing you to break up code for documentation in
notebooks.

Class properties also work with showdoc.

------------------------------------------------------------------------

<a
href="https://github.com/AnswerDotAI/nbdev/blob/main/nbdev/showdoc.py#L50"
target="_blank" style="float:right; font-size:smaller">source</a>

### doc

``` python

def doc(
    elt
):

```

*Show [`show_doc`](https://nbdev.fast.ai/api/showdoc.html#show_doc) info
along with link to docs*

------------------------------------------------------------------------

<a
href="https://github.com/AnswerDotAI/nbdev/blob/main/nbdev/showdoc.py#L55"
target="_blank" style="float:right; font-size:smaller">source</a>

### showdoc_nm

``` python

def showdoc_nm(
    tree
):

```

*Get the fully qualified name for showdoc.*

## Other helpers

------------------------------------------------------------------------

<a
href="https://github.com/AnswerDotAI/nbdev/blob/main/nbdev/showdoc.py#L60"
target="_blank" style="float:right; font-size:smaller">source</a>

### colab_link

``` python

def colab_link(
    path
):

```

*Get a link to the notebook at `path` on Colab*

``` python
colab_link('index')
```

[Open `index` in
Colab](https://colab.research.google.com/github/AnswerDotAI/nbdev/blob/main/nbs/index.ipynb)
