Skip to main content

docshund: a doc dog.

Project description

d o c s h u n d

simple code documentation generation

PyPI

NOTE: Docshund is in alpha and may not yet be suitable for production workloads. Please exercise caution when using. (We'll try not to break everything if you promise not to expect it not to break everything.)

Why

We were tired of complex, long-running doc-generators. In some cases, we wanted to generate documentation for our source but didn't want to install all of our libraries' dependencies just to make a small change to a README. Docshund is the answer to this problem. Docshund doesn't require pip-installation of your package and, even for large projects, runs in just a handful of milliseconds.

On the flip-side, Docshund does not have the same featurelist as many other libraries, and Docshund also has a hard time jumping up onto your couch without help.

Installation

pip3 install docshund

Usage

docshund code.py > documentation.md

Or document an entire module with:

docshund .
docshund /path/to/module

What she do:

Go from this:

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:

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.


(_______________()'`;
/,               /`
\\"-------------\\

Made with ❤️ at 🥭

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docshund-0.1.3.tar.gz (257.8 kB view details)

Uploaded Source

File details

Details for the file docshund-0.1.3.tar.gz.

File metadata

  • Download URL: docshund-0.1.3.tar.gz
  • Upload date:
  • Size: 257.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for docshund-0.1.3.tar.gz
Algorithm Hash digest
SHA256 333ee877723686c634a3170595ba5ad3e465f4e5c66ffb7262e64f1dc7441427
MD5 d866457119a9e7fb6c0018fe76a25347
BLAKE2b-256 210e6d81b7eb296184c2ab954c63eabacce4a0478844a727204b90e978463f3c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page