pyarch
v0.0.2
Pythonパッケージの動的なクラス図を生成して、開発とメンテナンスを促進するツール。
モチベーション:
Pyarchは、Githubワークフローの一部として実行できます。
| 属性 | 説明 | 必須 | デフォルト |
|---|---|---|---|
input | パッケージソースコードを備えたディレクトリ | 真実 | |
output | 生成されたHTMLファイルを保存するディレクトリ | 間違い | .pyarch/output |
title | カスタムHTMLタイトル | 間違い | Python package architecture |
header | カスタムHTMLヘッダー | 間違い | Python package architecture |
footer | カスタムHTMLフッター | 間違い | <p style="font-size:15px">Built with ❤️ by <a href="https://www.dkisler.com" target=_blank>Dmitry Kisler - dkisler.com</a></p> |
output :生成されたHTMLファイルへのパス。次のGitHubワークフローを使用して、パッケージアーキテクチャ図を生成し、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 前提条件:
ステップ
/usr/local/binに移動します pyarch --version
sudo許可が必要になることに注意してください。または、スクリプトはstep 2なしで実行できます。
python3 pyarch --version
デモ
注意が必要です。
sudo curl -SLo /usr/local/bin/pyarch https://github.com/kislerdm/pyarch/releases/download/v0.0.1/pyarch &&
pyarch --version
出力:
version: 0.0.1
前提条件:
ステップに従って、Sklearnの動的アーキテクチャ図を使用してWebページを生成します。
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"
ディレクトリには次の構造があると予想されます。
.
├── code
├── classes.puml
├── packages.puml
└── index.html
Webブラウザーを使用してindex.htmlを開きます。

このプロジェクトはMITライセンスの下で配布されています - お気軽に使用してください。
githubの問題、および/またはPRを開き、協力するための変更提案を使用してください。