{"repo":"lucsorel/pydoctrace","free":true,"listed":false,"github":"https://github.com/lucsorel/pydoctrace","clone":"git clone https://github.com/lucsorel/pydoctrace.git","description":"Generate architecture diagrams by tracing Python code execution","language":"Python","stars":17,"topics":["doc-as-code","python3","tracing","architecture","documentation"],"license":"MIT","category":"analytics","readme_excerpt":"pydoctrace uses pre-commit hooks and pre-commit.ci continuous integration to enforce commit messages, code formatting and linting for quality and consistency sake. See the code conventions section if you would like to contribute to the project. pydoctrace Generate diagrams by tracing Python code execution. Here are the diagrams produced by 2 different implementations of the factorial function ( n n-1 n-2 ... 1 ): - a sequence diagram for the recursive implementation - a component diagram for the looping implementation tests.modules.factorial.factorial recursive.puml tests.modules.factorial.factorial reduce multiply.puml The sequence diagram gives more details about the execution but can easily grow large, the component diagram is more concise and helps viewing the architecture behind the calls. Installation Use your favorite dependency manager to install pydoctrace : Usage Import a decorator and apply it to the functions whom execution you want to trace: Executing main() will create 2 diagram files in the current working directory: validate-component.puml : a PlantUML component diagram showing the interactions between validate() as the start, and validate is not none() and validate is in database() (and all their inner function calls, if any) do something-sequence.puml : a PlantUML sequence diagram showing the interactions between do something() as the start, and load stuff() , process job() and save work() (and all their inner function calls, if any) You can then view these ","default_branch":null,"files":null,"tree":[],"storefront":"/r/lucsorel","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lucsorel/pydoctrace/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}