Skip to main content

No project description provided

Project description

Pyautodoc permite la creación de documentación de los proyectos python de forma totalmente automática y configurable. Hace uso del proyecto Sphinx y de extensiones como autodoc para generar la documentación en función de los docstring de las clases y métodos del proyecto. Puedes leer la documentación generada con este proyecto, y sobre este proyecto pinchando aqui

Guía rápida

Instalación:

Desde github podemos instalarlo ejecutando:

pip install git+https://github.com/alvarogf97/pyautodoc.git

Desde PyPi:

pip install pyautodoc

Uso

NOTA: para compilar a latex es necesario tener instalado compilador para el mismo. En windows se necesita MiKTeX y Perl

Desde consola:

Ejecutamos el comando:

pyautodoc

Indicamos los datos necesarios:

Enter project name: <Nombre del proyecto>
Enter author: <Autor>
Enter current version: <Version>
Enter language locale (leave blank for es): <Código del país para las traducciones>
Enter path for root project folder: <carpeta del proyecto a documentar>
Enter path for README.md (leave blank if you don't want to include it): <fichero readme>
Enter path for LICENSE.md (leave blank if you don't want to include it): <fichero license>
Enter path for CHANGELOG.md (leave blank if you don't want to include it): <fichero changelog>
Enter path for Output folder: <Carpeta para generar la documentación>

En la carpeta output/source se encontrarán los ficheros generados. Para compilar a html o pdf ejecutamos:

make html
make latexpdf

desde la carpeta output

Desde yaml:

Podemos crear un fichero pydoc.yaml con la configuración necesaria para la generación automática de la documentación, esta opción permite una configuración mucho mas amplia que la generación por consola.

La estructura del documento pydoc.yaml es:

####################################################
#                   GENERAL CONFIG                 #
####################################################
project_name: PyAutoDoc
author: Alvaro
version: 0.5
language_locale: es
root_folder: pyautodoc
output_folder: MyOutputFolder
sphinx_extensions:
  - sphinx.ext.viewcode

####################################################
#                     EXTRA FILES                  #
####################################################
readme_file: README.md
license_file: LICENSE.md
changelog_file: CHANGELOG.md

####################################################
#                   PROJECT CONFIG                 #
####################################################
# paquetes o ficheros específicos que no estarán en 
# la documentación
excludes:
  - scripts

# paquetes o ficheros generales que no estarán en 
# la documentación ej: todos los ficheros test.py
ignores:
  - test.py

# paquetes que no se deben importar al leer los 
# ficheros (solo se necesita especificar el paquete
# de mas alto nivel)
mocks_imports:
  - django
  - pyautodoc

####################################################
#                  COMPILING CONFIG                #
####################################################
makes:
  - html
  #- pdf

####################################################
#                    HTML CONFIG                   #
####################################################
html_config:
  template_theme: alabaster
  #custom_css:
  #template_package: sphinx_theme
  #template_path: sphinx_theme.get_html_theme_path('stanford-theme')
  #template_extensions:
  # - ext_1
  # - ext_2
  template_options:
    logo: MyLogo
    github_user: alvarogf97
    github_repo: pyautodoc
    fixed_sidebar: True
    description: Pyautodoc! Automatize your python project documentation

####################################################
#                 LaTeX PDF CONFIG                 #
####################################################
latex_config:
  latex_engine: pdflatex
  latex_logo: MyLogo

Para generar la documentación ejecutamos:

pyautodoc --yaml

Alternativamente, si el fichero .yaml tiene otro nombre, o esta en otra localización, podemos ejecutar:

pyautodoc --yaml <Ruta del fichero .yaml>

Subir documentación a github

  • Añadimos sphinx.ext.githubpages a las sphinx_extensions
  • Creamos una directorio docs en el directorio raíz del repositorio
  • Copiamos el contenido del directorio /build/html al directorio docs
  • Copiamos el directorio source al directorio docs
  • Hacemos comit y push
  • En github nos vamos a settings > github pages > source y seleccionamos master branch/docs folder

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

pyautodoc-0.7.tar.gz (13.8 kB view details)

Uploaded Source

File details

Details for the file pyautodoc-0.7.tar.gz.

File metadata

  • Download URL: pyautodoc-0.7.tar.gz
  • Upload date:
  • Size: 13.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for pyautodoc-0.7.tar.gz
Algorithm Hash digest
SHA256 1c5d582e5b8042dd8084feabdc75336dd388728fea2d5a5df0991dcdbe7965d1
MD5 3573747e0921a11bcd9d51d599034278
BLAKE2b-256 c5071bf88c57c5f9b8d854c772c5c3377699c23d817a743a9e2a0cdbeffff387

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