Python vem junto com pydoc. Você pode usar o pydoc para gerar automaticamente a documentação do seu módulo ou pacote. Para isso, seu módulo ou pacote precisa conter docstrings.
Você pode executar o pydoc diretamente do terminal. cd para o diretório que contém o módulo para o qual você deseja gerar automaticamente uma documentação. Em seguida, execute o seguinte comando.
python -m pydoc -w modulename
Neste caso, o módulo é modulename.py. O comando acima irá gerar um arquivo .html que contém a documentação gerada automaticamente.
Para um projeto maior, prefiro armazenar todas as documentações de todos os módulos em um diretório. Para isso, primeiro crio a documentação de cada módulo. Eu faço isso com o comando acima.
Em seguida, crio um diretório vazio com o comando abaixo
mkdir docs
Neste caso, o novo diretório é chamado de “docs”.
Por fim, movo todos os arquivos .html gerados automaticamente no diretório docs .
mv *.html docs