La herramienta para generar diagramas de clases dinámicos de paquetes de Python para facilitar su desarrollo y mantenimiento.
Motivación :
Pyarch se puede ejecutar como parte del flujo de trabajo GitHub.
| Atributo | Descripción | Requerido | Por defecto |
|---|---|---|---|
input | Directorio con el código fuente del paquete | verdadero | |
output | Directorio para guardar el archivo HTML generado | FALSO | .pyarch/output |
title | Título HTML personalizado | FALSO | Python package architecture |
header | Encabezado HTML personalizado | FALSO | Python package architecture |
footer | Pie de página HTML personalizado | FALSO | <p style="font-size:15px">Built with ❤️ by <a href="https://www.dkisler.com" target=_blank>Dmitry Kisler - dkisler.com</a></p> |
output : ruta al archivo HTML generado.El siguiente flujo de trabajo GitHub se puede utilizar para generar el diagrama de arquitectura del paquete y publicarlo utilizando páginas GitHub.
name : " Pyarch Pages "
on :
workflow_dispatch :
permissions :
contents : read
pages : write
id-token : write
concurrency :
group : " pages "
cancel-in-progress : false
jobs :
pyarch-pages :
runs-on : ubuntu-20.04
steps :
# assumption: the workflow is running in the python package repo
- uses : actions/checkout@v3
with :
fetch-depth : 0
- name : Generate HTML
uses : kislerdm/[email protected]
with :
# Change to the path with the package's source files
input : src
title : " Architecture of my package "
header : " Architecture of my package "
output : public
- name : Setup Pages
uses : actions/configure-pages@v3
- name : Upload artifact
uses : actions/upload-pages-artifact@v2
with :
path : ' public '
- name : Deploy to GitHub Pages
id : deployment
uses : actions/deploy-pages@v2 Prerrequisitos :
Pasos
/usr/local/bin pyarch --version
Tenga en cuenta que se requerirán permisos de sudo. Alternativamente, el script se puede ejecutar sin el step 2 :
python3 pyarch --version
Manifestación
Nota Se requiere curl.
sudo curl -SLo /usr/local/bin/pyarch https://github.com/kislerdm/pyarch/releases/download/v0.0.1/pyarch &&
pyarch --version
Producción:
version: 0.0.1
Prerrequisitos :
Siga los pasos para generar la página web con diagramas de arquitectura dinámica de Sklearn:
mkdir sklearn-diagram && cd sklearn-diagram
git clone [email protected]:scikit-learn/scikit-learn.git code
pyreverse -Akmy -o puml -d . --ignore=test,tests code/sklearn
pyarch -i . -o . -v --title="sklearn architecture" --header="sklearn architecture"
Se espera que el directorio tenga la siguiente estructura:
.
├── code
├── classes.puml
├── packages.puml
└── index.html
Abra index.html usando un navegador web:

El proyecto se distribuye bajo la licencia MIT: no dude en usarlo como lo hará.
Abra el problema de GitHub, y/o las relaciones públicas con una propuesta de cambio para colaborar.