haystack/docs/README.md
Branden Chan 99e924aede
Update Documentation for Haystack 0.5.0 (#557)
* Add languages and preprocessing pages

* add content

* address review comments

* make link relative

* update api ref with latest docstrings

* move doc readme and update

* add generator API docs

* fix example code

* design and link fix

Co-authored-by: Malte Pietsch <malte.pietsch@deepset.ai>
Co-authored-by: PiffPaffM <markuspaff.mp@gmail.com>
2020-11-06 10:53:22 +01:00

46 lines
2.0 KiB
Markdown

# :ledger: Looking for the docs?
You find them here here:
#### https://haystack.deepset.ai/docs/intromd
# :computer: How to update docs?
## Usage / Guides etc.
Will be automatically deployed with every commit to the master branch
## API Reference
We use Pydoc-Markdown to create markdown files from the docstrings in our code.
### Update docstrings
Execute this in `/haystack/docs/_src/api/api`:
```
pip install 'pydoc-markdown>=3.0.0,<4.0.0'
pydoc-markdown pydoc-markdown-document-store.yml
pydoc-markdown pydoc-markdown-file-converters.yml
pydoc-markdown pydoc-markdown-preprocessor.yml
pydoc-markdown pydoc-markdown-reader.yml
pydoc-markdown pydoc-markdown-generator.yml
pydoc-markdown pydoc-markdown-retriever.yml
```
(Or run one of the commands above to update the docstrings only for a single module)
### Configuration
Pydoc will read the configuration from a `.yml` file which is located in the current working directory. Our files contains three main sections:
- **loader**: A list of plugins that load API objects from python source files.
- **type**: Loader for python source files
- **search_path**: Location of source files
- **ignore_when_discovered**: Define which files should be ignored
- **processor**: A list of plugins that process API objects to modify their docstrings (e.g. to adapt them from a documentation format to Markdown or to remove items that should not be rendered into the documentation).
- **ignore_when_discovered**: Define which API objects should be ignored
- **documented_only**: Only documented API objects
- **do_not_filter_modules**: Do not filter module objects
- **skip_empty_modules**: Skip modules without content
- **renderer**: A plugin that produces the output files.
- **type**: Define the renderer which you want to use. We are using the Markdown renderer as it can be configured in very detail.
- **descriptive_class_title**: Remove the word "Object" from class titles.
- **filename**: file name of the generated file