<p align=center><img align=center src='docshund.png' width=500 /></p>
<h3 align=center>d o c s h u n d</h3>
<h6 align=center>simple code documentation generation</h6>

> NOTE: Docshund is in alpha and is not yet suitable for production workloads. Please exercise caution when using.

# Installation

```python
pip3 install docshund
```

# Usage

```shell
docshund code.py > documentation.md
```

## What she do:

Go from this:

```python
class Foo:
    """
    This is a foo.

    Do not cross the foo streams!
    """

    def __init__(self):
        """
        Create a new foo.
        """

    def cross_streams(self, other_foo: Foo = None):
        """
        Cross the streams of this foo with another foo.

        If you do this, it will throw an error.

        Arguments:
            other_foo (Foo: None): The foo with which you'd like to cross streams

        Returns:
            None

        Raises:
            FooError: Raised if you cross the streams.

        """
        if other_foo:
            raise FooError("What did we JUST tell you?!")
```

To this markdown:

```
## *Class* `Foo`


This is a foo.

Do not cross the foo streams!


## *Function* `__init__(self)`


Create a new foo.


## *Function* `cross_streams(self, other_foo: Foo = None)`


Cross the streams of this foo with another foo.

If you do this, it will throw an error.

### Arguments
> - **other_foo** (`Foo`: `None`): The foo with which you'd like to cross streams

### Returns
    None

### Raises
> - **FooError** (`None`: `None`): Raised if you cross the streams.
```

## *Class* `Foo`


This is a foo.

Do not cross the foo streams!


## *Function* `__init__(self)`


Create a new foo.


## *Function* `cross_streams(self, other_foo: Foo = None)`


Cross the streams of this foo with another foo.

If you do this, it will throw an error.

### Arguments
> - **other_foo** (`Foo`: `None`): The foo with which you'd like to cross streams

### Returns
    None

### Raises
> - **FooError** (`None`: `None`): Raised if you cross the streams.
---

# Generating documentation for this repository

The reference documentation for this repository was generated using the following command:

```shell
docshund docshund/__init__.py > docs/Reference.md
```

You might say we... 😎 ate our own dogfood.

---

## Legal

Licensed under Apache 2.0. Reach out to opensource@fitmango.com with questions.

> Copyright 2019 FitMango.
>
> Licensed under the Apache License, Version 2.0 (the "License");
> you may not use this codebase except in compliance with the License.
> You may obtain a copy of the License at
>
> http://www.apache.org/licenses/LICENSE-2.0
>
> Unless required by applicable law or agreed to in writing, software
> distributed under the License is distributed on an "AS IS" BASIS,
> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> See the License for the specific language governing permissions and
> limitations under the License.

---

<h6 align=center>Made with ❤️ at <a href="https://github.com/fitmango">🥭</a></h6>
