High-level diagrams for the pyautogui project #929
+1,155
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Generated documentation to help new developers to get up to speed with the pyautogui.
Me and a friend have noticed that it is quite hard to get to know new codebases, so we are working on something which can help people get up to speed and thus reducing the load for both maintainers and new devs. We believe that it is always best to start with nice high-level visualization and then dig down into the interesting/relevant parts of the code i.e. first task/something one wants to contribute to.
This said, we generated diagrams leveraging static analysis and LLM's. I generated one for the pyautogui you can see how it renders here: https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/pyautogui/on_boarding.md
Would love to hear your opinion on the diagrams and on diagram first documentation in general, any feedback is more than welcome!
I usually open discussions, but they are not enabled for this project so I decided to directly open a PR :)
Full disclosure: we're trying to turn this into a startup, but we're still in a very early stage and figuring out what will actually be useful for people.